Displaying a collection of interactive elements that trigger actions directed to an item

ABSTRACT

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for displaying of collections of interactive elements that trigger actions directed to a particular contact, message, media file, or other item. In one aspect, a method is performed by a system comprising one or more data processing devices and a touchscreen display. The method includes displaying several identifiers, each identifier comprising one or more graphical or textual elements that identify an item, each identifier associated with a respective interactive element, receiving user interaction with a first of the interactive elements that is associated with a first of the identifiers, in response to the user interaction, displaying a collection of action widgets on the touchscreen display, the action widgets comprising iconic graphical indicia that each represent an action triggered by user interaction therewith, the iconic graphical indicia displayed adjacent one another in a strip-shaped area that is wider than it is high, the strip-shaped area being displaced vertically on the touchscreen display from the first identifier so that the first identifier is visible on the touchscreen notwithstanding the display of the collection of action widgets, receiving user interaction with a first of the action widgets that is in the collection displayed on the touchscreen display, and performing the action represented by the first of the action widgets on the item identified by the first identifier.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the priority of U.S. Provisional ApplicationSer. No. 61/255,847, filed on Oct. 28, 2009, the contents of which areincorporated herein by reference.

BACKGROUND

This specification relates to the display of collections of interactiveelements that trigger actions directed to a particular contact, message,media file (e.g., image, music or video file), or other item.

Touchscreens are graphical displays that can act as both an input and anoutput. For example, visual elements displayed in a touchscreen canserve a double-duty, acting both as interactive elements that receiveuser input and as visual outputs that convey information to a user. As aresult, data processing devices that use touchscreens can be maderelatively small. Indeed, touchscreens are so effective that many moderndata processing devices supplement touchscreens with only a small numberof other—generally mechanical—input mechanisms. Touchscreens are thusfavored in data processing devices where size and portability areimportant design considerations, such as smartphones and personaldigital assistants (PDA's).

SUMMARY

This specification describes technologies relating to the display—ontouchscreen displays—of collections of interactive elements that triggerthe performance of data processing and other actions. The interactiveelements in such collections are directed to the performance ofdata-processing or other actions that are directed to a particularcontact, message, media file (e.g., image, music or video file), orother item. As a result of the grouping and display of such acollection, a user can conveniently and intuitively navigate through awide range of actions directed to a particular item, even when thetouchscreen display on which the collection of interactive elements isdisplayed is relatively small sized.

A first aspect of these technologies is a method performed by a systemcomprising one or more data processing devices and a touchscreendisplay. The method includes displaying several identifiers, eachidentifier comprising one or more graphical or textual elements thatidentify an item, each identifier associated with a respectiveinteractive element, receiving user interaction with a first of theinteractive elements that is associated with a first of the identifiers,in response to the user interaction, displaying a collection of actionwidgets on the touchscreen display, the action widgets comprising iconicgraphical indicia that each represent an action triggered by userinteraction therewith, the iconic graphical indicia displayed adjacentone another in a strip-shaped area that is wider than it is high, thestrip-shaped area being displaced vertically on the touchscreen displayfrom the first identifier so that the first identifier is visible on thetouchscreen notwithstanding the display of the collection of actionwidgets, receiving user interaction with a first of the action widgetsthat is in the collection displayed on the touchscreen display, andperforming the action represented by the first of the action widgets onthe item identified by the first identifier.

This first aspect and the second and third aspects can include one ormore of the following features. Displaying the collection of actionwidgets on the touchscreen display can include apparently displacing oneor more of identifiers away from the first identifier to accommodate thestrip-shaped area between the displaced one or more of identifiers andthe first identifier. The method can include displaying a disambiguationinteractive element on the touchscreen display on a side of thestrip-shaped area opposite the first identifier and receiving userinteraction with the disambiguation interactive element, the userinteraction disambiguating the action represented by the first of theaction widgets. Performing the action represented by the first of theaction widgets can include performing the action in accordance with thedisambiguation provided by the user interaction with the disambiguationinteractive element. Displaying the collection of action widgets caninclude displaying a pointed indicium that is directed toward an area inwhich the first identifier is found. A border can surround thecollection of action widgets. The border can demarcate the collection ofaction widgets from other portions of the touchscreen display. Thepointed indicium can extend outwardly from a relatively straighterportion of the border toward the area in which the first identifier isfound. Each collection of information can be displayed in a strip-shapedarea that is wider than it is high. Each strip-shaped area can occupy amajority of the width of the touchscreen display. The identifiers can bealigned horizontally in the strip-shaped areas. The method can alsoinclude receiving user interaction dragging across the strip-shaped areaand in response to the user interaction, displaying a second collectionof action widgets on the touchscreen display. The second collection ofaction widgets can include at least one action widget that is not foundin the action widget collection and exclude at least one action widgetthat is found in the action widget collection. The first identifier canidentify a first message. The action widgets in the collection caninclude a reply widget that, in response to user interaction, triggers adisplay of a presentation for authoring a reply to the first message anda repost widget that, in response to user interaction, triggersreposting of the first message to a social network. The first identifiercan identify a first contact. The action widgets in the collection caninclude a telephone contact widget that, in response to userinteraction, triggers a telephone call to the first contact and amessage widget that, in response to user interaction, triggers a displayof a presentation for authoring a message addressed to the firstcontact. The first identifier can identify a first media file. Theaction widgets in the collection can include a telephone contact widgetthat, in response to user interaction, triggers a telephone call to thefirst contact and a message widget that, in response to userinteraction, triggers a display of a presentation for authoring amessage addressed to the first contact.

A second aspect of these technologies is a device that includes acomputer storage medium encoded with a computer program. The programincludes instructions that when executed by a system comprising one ormore data processing devices and a touchscreen display, cause the one ormore data processing devices to perform operations. The operationsinclude displaying an interactive element in a presentation on thetouchscreen display, receiving user interaction with the interactiveelement, and displaying, in response to the user interaction, acollection of action widgets apparently overlaid on the presentation.The action widgets comprising iconic graphical indicia that eachrepresent an action triggered by user interaction therewith. The iconicgraphical indicia are displayed adjacent one another in an area that iswider than it is high and that is associated with a visible indiciumthat indicates to what the action triggered by user interaction with thewidgets in the collection are directed. The area is displaced on thetouchscreen display from the interactive element so that the interactiveelement is visible in the presentation notwithstanding the display ofthe collection of widgets.

This second aspect and the first and third aspects can include one ormore of the following features. The operations can also includereceiving user interaction with a first of the action widgets that is inthe collection displayed on the touchscreen display and performing theaction represented by the first of the action widgets in accordance withthe visible indicium. The method can include displaying a disambiguationinteractive element on the touchscreen display and receiving userinteraction with the disambiguation interactive element, the userinteraction disambiguating the action represented by the first of theaction widgets. Performing the action represented by the first of theaction widgets can include performing the action in accordance with thedisambiguation provided by the user interaction with the disambiguationinteractive element. The visible indicium can indicate that the actiontriggered by user interaction with the action widgets in the collectionis directed to a message. The action widgets in the collection caninclude a reply widget that, in response to user interaction, triggers adisplay of a presentation for authoring a reply to the first message anda repost widget that, in response to user interaction, triggersreposting of the first message to a social network. The visible indiciumcan indicate that the action triggered by user interaction with theaction widgets in the collection is directed to a hyperlink that refers,in a reference, to an electronic document or to a portion of anelectronic document. The action widgets in the collection can include anopen widget that, in response to user interaction, triggers opening ofthe referenced electronic document or the referenced portion of theelectronic document and a share widget that, in response to userinteraction, triggers transmission of a message or display of apresentation for authoring a message that includes the reference. Thearea in which the iconic graphical indicia are displayed can bedemarcated from other portions of the presentation by a border thatsurrounds the collection of widgets. The visible indicium can include apointed indicium that extends outwardly from a relatively straighterportion of the border. The interactive element can be encompassed by theborder.

A third aspect of these technologies is a handheld data processingsystem that includes a touchscreen display and a collection of one ormore data processing devices that perform operations in accordance withone or more collections of machine-readable instructions. The operationsinclude instructing the touchscreen display to display, in response touser interaction with a first interactive element displayed on thetouchscreen display in association with an identifier of a contact, afirst collection of action widgets comprising iconic graphical indiciathat each represent an action directed to the identified contact anddisplay, in response to user interaction with a second interactiveelement displayed on the touchscreen display in association with anidentifier of a message, a second collection of action widgetscomprising iconic graphical indicia that each represent an actiondirected to the identified message. The respective of the first and thesecond interactive elements are visible on the touchscreen displaynotwithstanding the display of the respective of the first or the secondcollection of action widgets.

This third aspect and the first and second aspects can include one ormore of the following features. The operations can include instructingthe touchscreen display to display, in response to user interaction witha third interactive element displayed on the touchscreen display inassociation with an identifier of a media file, a third collection ofaction widgets comprising iconic graphical indicia that each representan action directed to the identified media file. Each of the firstinteractive element and the second interactive element can be displayedon the touchscreen display in conjunction with a collection of otherinteractive elements. Each of the other interactive elements can beassociated with an identifier of another contact or another message. Theidentifiers in a presentation can be displayed in respectivestrip-shaped areas that include information characterizing contacts,media files, or messages. The identifiers can be aligned horizontally inthe strip-shaped areas. Each of the collections of action widgets can beassociated with a pointed indicium that is directed to indicate therespective contact or message to which the actions are directed. Theoperations can include instructing the touchscreen display to display aborder surrounding the first and the second action widget collections,the border demarcating the first and the second action widgetcollections from other portions of the touchscreen display and thepointed indicium extending outwardly from a relatively straighterportion of the borders toward the area in which the identifier of therespective contact or message is found. The operations can includeinstructing the touchscreen display to display the iconic graphicalindicia of the first and the second action widget collections adjacentone another in a strip-shaped area that is wider than it is high. Thestrip-shaped area can be displaced vertically on the touchscreen displayfrom the respective of the first and the second interactive elements.The operations can also include receiving user interaction draggingacross the strip-shaped area that includes the iconic graphical indiciaand in response to the dragging user interaction, instructing thetouchscreen display to display a second collection of action widgets inthe strip-shaped area, the second collection of action widgets includingat least one action widget that is not found in the first or the secondaction widget collection and excluding at least one action widget thatis found in the first or the second action widget collection.

The details of one or more implementations described in thisspecification are set forth in the accompanying drawings and thedescription below. Other features, aspects, and advantages of thesubject matter will become apparent from the description, the drawings,and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic representation of a system of electronic devicesthat can exchange information for the performance of data processing andother activities.

FIGS. 2-14, 19, and 20 are schematic representations of the display ofpresentations on a portion of a touchscreen of an electronic device.

FIG. 15 is a schematic representation of a collection of electroniccomponents that can be housed in the electronic device that displays thepresentations of FIGS. 2-14.

FIG. 16 is a schematic representation of a collection of informationidentifying interactive elements that are to be displayed in response touser interaction with different categories of interactive elements.

FIGS. 17 and 18 are schematic representations of implementations ofcollections of activities in an asymmetric social network.

Like reference numbers and designations in the various drawings indicatelike elements.

DETAILED DESCRIPTION

FIG. 1 is a schematic representation of a system 100 of electronicdevices that can exchange information for the performance of dataprocessing and other activities. System 100 includes a device 105 thatincludes a touchscreen 115 with which a user can interact. Device 105can be, e.g., a computer, a tablet computer, a telephone, a musicplayer, a PDA, a gaming device, or the like. In some implementations,device 105 can be mobile, portable device, as shown.

In addition to touchscreen 115, device 100 include a housing 110 and acollection of off-screen input elements 120. Housing 110 supportstouchscreen 115 and off-screen input elements 120. Housing 110 alsohouses a collection of electronic components, as described furtherbelow.

Touchscreen 115 is a graphical display that can act as both an input andan output. For example, touchscreen 115 can sense the position andmovement of a user's finger or other elements. The sensed informationcan be translated into commands that trigger the performance of dataprocessing and other activities by the electronic components housed inhousing 110, by other electronic devices in system 100, or by both.Touchscreen 115 can be, e.g., a liquid crystal display (LCD) device, alight emitting diode (LED) device, an organic LED (OLED) device, anE-INK device, or a flexible touch screen device. Input elements 120 areinput devices that are “off” touchscreen 115. Input elements 120 are notpart of touchscreen 115 and can receive input from a user that isdistinct from the input received by touchscreen 115. Input elements 120can include one or more key, pad, trackball, or other component thatreceives mechanical, audio, or other input from a user.

Among the electronic components housed in housing 110 are one or morewireless or wired data communication components such as transmitters,receivers, and controllers of those components. Device 105 can thusexchange information with other electronic devices in system 100, e.g.,in response to user interaction with touchscreen 115.

In the illustrated implementation of system 100, device 105 includes twowireless data communication components, namely, a cellular phonetransceiver and a WiFi transceiver. The WiFi transceiver is able toexchange messages 125 with a WiFi access point 125 and messages 135 witha peer electronic device 140 that also includes a WiFi transceiver. Peerelectronic device 140 is associated with another individual user. Thecellular phone transceiver is able to exchange messages 145 with a phonebase station 155.

Phone base station 155 and WiFi access point 130 are connected for datacommunication with one or more data communication networks 160 via datalinks 162, 164 and can exchange information with one or more servers165, 170, 175, 180.

In some implementations, peer electronic device 140 may also be able toexchange messages with WiFi access point 130 (or another WiFi accesspoint) for data communication with data communication networks 140,device 105, and one or more of servers 165, 170, 175, 180. One or moreadditional devices 183, which are associated with one or more otherindividual users, may also be able to exchange messages 185 with phonebase station 155 (or another base station) for data communication withdata communication networks 140, device 105, and access to one or moreof servers 165, 170, 175, 180. One or more personal computing devices190, which are associated with one or more other individual users, mayalso be connected for data communication with one or more datacommunication networks 140, device 105, and access to one or more ofservers 165, 170, 175, 180 via a data link 195

System 100 supports both direct and server-mediated interaction by theusers with whom devices 105, 140, 182, 190 are associated. Suchinteraction includes the exchange of messages, photos, or other mediadirectly to one another or indirectly, i.e., mediated by one or more ofservers 165, 170, 175, 180.

The illustrated implementation of system 100 includes four differentexamples of servers that can mediate such interaction, namely, anelectronic mail server 165, a social network server 170, a text messageserver 175, and a photo server 180. Each of servers 165, 170, 175, 180includes one or more data processing devices that are programmed toperform data processing activities in accordance with one or more setsof machine—readable instructions. For example, electronic mail server165 is programmed to allow a user to access electronic mail from anelectronic mail client. Social network server 170 is programmed to allowusers to access a social network where messages, photos, and/or othermedia are exchanged.

The social network provided by social network server 170 can be asymmetric social network or an asymmetric social network. In a symmetricsocial network, related members necessarily share the same relationshipwith one another. Examples of such symmetric social networks includeFACEBOOK, LINKEDIN, and MYSPACE, where two or more members establishbi-directionally equivalent “friend” or other relationships generallyusing an invitation/response protocol that effectively requires theconsent of both members to the relationship. Such bi-directionallyequivalent relationships provide the same social interactionpossibilities to the related members.

In an asymmetric social network, a first member's relationship to asecond member is not necessarily the same as the second member'srelationship to the first member. Since the character of the socialinteraction between members in a member network can be defined inaccordance with the nature of the relationship between those members, afirst member in an asymmetric social network may interact with a secondmember in ways that differ from the social interaction provided for thesecond member to interact with the first member. An example of such anasymmetric social network is TWITTER, where a first member may be afollower of a second member without the second member necessarily beinga follower of the first. Indeed, in many asymmetric social networks, asecond member need not even know a first member's identity even thoughthe first member has a relationship to the second member.

Text message server 175 is programmed to allow a user to exchange chator other text messages with other users. Media server 180 is programmedto allow a user to access a collection of one or more media files (e.g.,image, music or video files) posted to photo server 180 by otherindividuals. In some implementations, media server 180 may restrict auser to accessing media files posted by other individuals who havesomehow approved the user's access.

FIG. 2 is a schematic representation of the display of a presentation200 on a portion of touchscreen 115 of device 105. Presentation 200includes a collection of identifiers 205, 210, 215, 220, 225 of acontact. A contact is one or more individuals or other entity. A contactcan be associated with an electronic device that can exchangeinformation with device 105, such as one or more of devices 140, 182,190 in system 100 (FIG. 1). In the illustrated implementation, eachidentifier 205, 210, 215, 220, 225 is the name of a respective contactand hence textual. However, other identifiers such as graphical, iconic,or numeric identifier can also be used.

In some implementations, presentation 200 can be part of a display of acollection of other information on touchscreen 115 of device 105. Forexample, touchscreen 115 can display presentation 200 along withinteractive icons that trigger the performance of data processingapplications by device 105. In some implementations, the contactsidentified by such a presentation 200 can be limited to “favorite”contacts, as discussed further below.

Identifiers 205, 210, 215, 220, 225 are each associated with arespective interactive widget 230, 235, 240, 245, 250 by positioning orarrangement on presentation 200. Each interactive widget 230, 235, 240,245, 250 is an interactive element that, in response to userinteraction, triggers the display of a collection of additionalinteractive elements. The additional interactive elements trigger theperformance of additional data processing or other actions that aredirected to the contact identified by the associated identifier 205,210, 215, 220, 225, as described further below.

In the illustrated implementation, each identifier 205, 210, 215, 220,225 is associated with a respective interactive widget 230, 235, 240,245, 250 by virtue of common positioning within an area 255 that isdedicated to the display of information characterizing a single contact.Interactive widgets 230, 235, 240, 245, 250 are positioned laterallyadjacent to respective of identifiers 205, 210, 215, 220, 225 (i.e., tothe right in the illustrated implementation). In the illustratedimplementation, areas 255 are demarcated from one another by borders260. In other implementations, areas 255 can be demarcated using color,empty expanses, or other visual features. In other implementations,interactive widgets 230, 235, 240, 245, 250 can be positioned adjacentareas 255.

In the illustrated implementation, each area 255 also includes agraphical indicium 265 that characterizes the contact. Each graphicalindicium 265 is an photograph, an icon, or other graphicalrepresentation of the contact identified by an associated identifier205, 210, 215, 220, 225. Graphical indicia 265 can be stored in one ormore memory devices of device 105, e.g., in conjunction with othercontact information.

In some implementations, each area 255 can include additionalinformation characterizing a contact, such as some or all of thecontact's “contact information.” Such contact information can include,e.g., the contact's title, image, phone number, electronic mail or otheraddress, employer, moniker in a social network, or the like. Suchadditional information can also be stored in one or more memory devicesof device 105.

In the illustrated implementation of device 105 (i.e., a portable,handheld device), each area 255 occupies a majority of the width W oftouchscreen 115. Further, areas 255 are aligned with one another andarranged one above the other to span a majority of the height H oftouchscreen 115. Identifiers 205, 210, 215, 220, 225, graphical indicia265, and widgets 230, 235, 240, 245, 250 in different areas 255 arealigned with one another. Such an arrangement lists informationcharacterizing the contacts identified by 205, 210, 215, 220, 225 in aconvenient format that is familiar to many individuals. Other layoutsare possible, e.g., in other contexts. By way of example, if device 105includes a relatively larger touchscreen 115 than in the illustratedimplementation, then areas 255 can be arranged differently and/or spanrelatively smaller portions of touchscreen 115.

In some implementations, the display of additional identifiers andassociated interactive widgets and concomitant removal one or more ofidentifiers 205, 210, 215, 220, 225 and widgets 230, 235, 240, 245, 250can be triggered by user interaction with one or more of input elements120 and/or presentation 200. For example, in some implementations,presentation 200 can trigger scrolling navigation through a collectionof contacts and contact information in response to touchscreen 115identifying upward or downward movement of a finger or other elementacross presentation 200. As another example, in some implementations,presentation 200 can include additional interactive widgets thattrigger, in response to user interaction, scrolling navigation through acollection of contacts and contact information.

Presentation 200 can be displayed in accordance with one or more sets ofmachine-readable instructions that are performed by one or more dataprocessing devices housed in housing 110 of device 105, as describedfurther below. The instructions can cause device 105 to displaypresentation 200 at various points in a set of data processingactivities. For example, the instructions can cause device 105 todisplay presentation 200 in response to user interaction with a widgetthat indicates that a user wishes to make a selection from a collectionof contacts.

FIG. 3 is a schematic representation of the display of a presentation300 on a portion of touchscreen 115 of device 105. Presentation 300 isdisplayed on touchscreen 115 in response to user interaction withinteractive widget 235 that is associated with contact identifier 210.The user interaction with interactive widget 235 that triggers thedisplay of presentation 300 can be, e.g., a single or a double click ortap.

In addition to the displayed features shared with presentation 200,presentation 300 also includes an action widget collection 305. Actionwidget collection 305 is a collection of interactive elements that, inresponse to user interaction, trigger data processing or other actionsdirected to the contact identified by the identifier which is associatedwith the interactive widget that triggers the display of the actionwidget collection. The user interaction that triggers the actions canbe, e.g., a single or a double click or tap on a particular actionwidget in collection 305 or the “dragging and dropping” of the contactidentified by the identifier which is associated with the interactivewidget that triggers the display of the action widget collection 305onto a particular action widget in collection 305.

In the illustrated implementation, action widget collection 305 includesa contact display widget 310, a contact edit widget 315, a telephonecontact widget 320, an e-mail contact widget 325, and a contact socialnetwork interaction widget 330. In the illustrated implementation,widgets 310, 315, 320, 325, 330 are iconic graphical indicia thatrepresent the actions triggered by user interaction therewith, asdescribed further below.

Contact display widget 310 is an interactive element that, in responseto user interaction, triggers the display of additional informationcharacterizing the contact identified by the identifier which isassociated with the interactive widget that triggers the display of theaction widget collection 305. The additional information can include oneor more of, e.g., the contact's title, image, phone number, electronicmail or other address, employer, moniker in a social network, or thelike. In the illustrated implementation, contact display widget 310 isan iconic graphical indicium that resembles a portion of the person ofan individual and represents that the display of additional informationrelated to the contact's person is triggered by user interaction.

Contact edit widget 315 is an interactive element that, in response touser interaction, triggers the display of interactive elements forediting information characterizing the contact identified by theidentifier which is associated with the interactive widget that triggersthe display of action widget collection 305. Such editing can includingchanging existing contact information stored in device 105 and addingnew contact information to the contact information stored in a datastorage device of device 105. In some implementations, the interactiveelements can respond to user interaction to add or change an identifierof the contact (including the respective of identifiers 205, 210, 215,220, 225), the contact's title, the contact's phone number, thecontact's electronic mail or other address, the contact's employer, thecontact's moniker in a social network, or the like. In someimplementations, the interactive elements can respond to userinteraction to add or change an image, an icon, or other graphicalrepresentation of the contact. In the illustrated implementation,contact edit widget 315 is an iconic graphical indicium that resembles awriting instrument and represents that editing of informationcharacterizing the contact is triggered by user interaction.

Telephone contact widget 320 is an interactive element that, in responseto user interaction, triggers a telephone call to the contact identifiedby the identifier which is associated with the interactive widget thattriggers the display of action widget collection 305. The telephone callcan be, e.g., a plain old telephone service (POTS) call, a cellularphone call, a voice over Internet protocol (VoIP) call, or other call.The telephone call can be placed to a telephone number that is stored inassociation with the respective of identifiers 205, 210, 215, 220, 225in a data storage device of device 105. In the illustratedimplementation, telephone contact widget 320 is an iconic graphicalindicium that resembles a telephone handset and represents that theplacing of a telephone call is triggered by user interaction.

E-mail contact widget 325 is an interactive element that, in response touser interaction, triggers the transmission of an electronic mailmessage or the display of a presentation for authoring an electronicmail message to the contact identified by the identifier which isassociated with the interactive widget that triggers the display ofaction widget collection 305. The electronic mail message can betransmitted to an electronic mail address that is stored in associationwith the respective of identifiers 205, 210, 215, 220, 225 in a datastorage device of device 105. In the illustrated implementation, e-mailcontact widget 325 is an iconic graphical indicium that resembles aletter envelope and represents that the transmission of an electronicmail message or the display of a presentation for authoring anelectronic mail message is triggered by user interaction.

Contact social network interaction widget 330 is an interactive elementthat, in response to user interaction, triggers interaction that ismediated by a social network with the contact identified by theidentifier which is associated with the interactive widget that triggersthe display of action widget collection 305. The social network can be asymmetric or an asymmetric social network. The interaction can include,e.g., opening the profile page of the contact in the social network ortransmitting a message to the contact using the capabilities proved bythe social network. The social network—mediated interaction can relyupon information characterizing the contact within the social networkthat is stored in association with the respective of identifiers 205,210, 215, 220, 225 in a data storage device of device 105. In theillustrated implementation, contact social network interaction widget330 is an iconic graphical indicium that resembles a net and representsthat interaction that is mediated by a social network is triggered byuser interaction.

In the illustrated implementation, the action widgets in collection 305are grouped together in an area 335 that appears to be overlaid uponother portions of presentation 200 that are not visible in presentation300. In particular, area 335 appears to obscure at least a portion ofarea 255 that includes information characterizing a contact that differsfrom the contact that is associated with the interactive widget 235 thattriggers the display of action widget collection 305. As a result, atleast a portion of identifier 215 of this different contact, and theassociated interactive widget 240 and graphical indicia 265 are notvisible in presentation 300 and appear to be obscured by the overlaidarea 335.

The contact identifier 210 that is associated with the interactivewidget 235 that triggers the display of action widget collection 305 isnot obscured by action widget collection 305. In other words, contactidentifier 210 and action widget collection 305 are both visible inpresentation 300. In the illustrated implementation, all of theinformation characterizing the contact identified by contact identifier210 remains visible notwithstanding the presentation of action widgetcollection 305 in presentation 300. Indeed, in the illustratedimplementation, area 255 that includes information characterizing thecontact identified by contact identifier 210 remains visible in itsentirety except for a relatively small incursion by a pointed indicium,as described further below.

In the illustrated implementation, area 335 is demarcated from otherportions of presentation 300 by a border 340. In other implementations,area 335 can be demarcated from other portions of presentation 300 bycolor or shade, by empty expanses, or by other visual features thatconvey that widgets 310, 315, 320, 325, 330 commonly belong tocollection 305.

In the illustrated implementation, border 340 of area 335 includes apointed indicium 345 that is directed toward area 255 that is associatedwith the interactive widget 235 that triggers the display of actionwidget collection 305. The directionality of pointed indicium 345 thusindicates that the actions triggered by user interaction with widgets310, 315, 320, 325, 330 are directed to the contact that is associatedwith that same interactive widget. In the illustrated implementation,the upward-pointing directionality of indicium 345 toward area 255 thatincludes identifier 210 allows a user to recognize that interaction withwidgets 310, 315, 320, 325, 330 trigger actions directed to therespective of viewing or editing the contact information of the contactidentified by identifier 210, placing a telephone call to or e-mailingthe contact identified by identifier 210, or interacting with thecontact identified by identifier 210 via a social network. In theillustrated implementation, pointed indicium 345 extends outwardly froma relatively straighter portion of border 340 and extends across border260 that demarcates area 255.

In the illustrated implementation, widgets 310, 315, 320, 325, 330 incollection 305 are arranged adjacent one another to span an area 335that is wider than it is tall. In the illustrated implementation, area335 spans a majority of the width W of touchscreen 115. In this, therelative sizes of the height and width dimensions of area 335 follow therelative sizes of the height and width dimensions of areas 255. Inparticular, areas 255 are generally strip-shaped elements that span amajority of the width W of touchscreen 115. Area 335 is also a generallystrip-shaped element that spans a majority of the width W of touchscreen115. In the illustrated implementation, the height of the strip of area335 (i.e., in the direction of height H of touchscreen 115) is smallerthan the height of the strips of areas 255, although this is notnecessarily the case. Indeed, in some implementations, the height of thestrip of area 335 can be the same as or larger than the height of thestrips of areas 255. Other layouts of area 335 are possible, e.g., inother contexts. By way of example, if device 105 includes a relativelylarger touchscreen 115 than in the illustrated implementation, then area335 can be arranged differently and/or span a relatively smaller portionof touchscreen 115.

In the illustrated implementation, widgets 310, 315, 320, 325, 330 incollection 305 are demarcated from one another by empty expanses. Inother implementations, widgets 310, 315, 320, 325, 330 can be demarcatedfrom one another by color or shade, by borders, or by other visualfeatures that convey that widgets 310, 315, 320, 325, 330 differ fromone another.

FIG. 4 is a schematic representation of the display of a presentation400 on a portion of touchscreen 115 of device 105. Presentation 400 isdisplayed on touchscreen 115 in response to user interaction with one ormore interactive elements. For example, in some implementations,presentation 400 can be displayed on touchscreen 115 in response to auser dragging a finger or other element across area 335 in presentation300 (FIG. 3).

In addition to the displayed features shared with presentations 200,300, presentation 400 also includes an action widget collection 405. Theinteractive elements in action widget collection 405 differ from theinteractive elements in action widget collection 305. In particular,action widget collection 405 includes at least one interactive elementthat is not found in action widget collection 305 and excludes at leastone interactive element that is found in action widget collection 305.For example, in the illustrated implementation, action widget collection405 includes a trio of widgets 410, 415, 420 that are not found inaction widget collection 305 and excludes contact display widget 310,contact edit widget 315, and telephone contact widget 320.

In transitioning between action widget collection 305 and action widgetcollection 405, widgets can appear to scroll into and out of areas 305,405 in the direction that a finger or other element is dragged. Forexample, in the illustrated implementation, widgets 410, 415, 420 mayhave shifted to the left and been deleted from area 305 as widgets 410,415, 420 shifted into area 305 from the right in response to a userdragging a finger or other element to the left across area 335 inpresentation 300.

Widgets 410, 415, 420 are interactive elements that, in response to userinteraction, trigger data processing or other actions directed to thecontact identified by the identifier which is associated with theinteractive widget that triggers the display of action widget collection305. For example, in the illustrated implementation, widget 410 is aninteractive element that, in response to user interaction, triggers thedisplay of a presentation for authoring a chat or other text message tothe contact identified by the identifier which is associated with theinteractive widget that triggers the display of action widget collection305. The text message can be transmitted to an address that is stored inassociation with the respective of identifiers 205, 210, 215, 220, 225in a data storage device of device 105. In the illustratedimplementation, widget 410 is an iconic graphical indicium thatresembles a bubble callout and represents that the display of apresentation for authoring a chat or other text message is triggered byuser interaction.

As another example, in the illustrated implementation, widget 415 is aninteractive element that, in response to user interaction, changes thecontact identified by the identifier which is associated with theinteractive widget that triggers the display of action widget collection305 into a “favorite” contact. Favorite contacts are contacts who havebeen identified by a user of device 105 as contacts that will be treateddifferently from the other contacts stored in a data storage device ofdevice 105. Favorite contacts are thus generally a proper subset of thestored contacts. Favorite contacts can be treated differently from othercontacts in a variety of different ways. For example, in someimplementations, incoming messages from favorite contacts are givenpriority over incoming messages from other, non-favorite contacts. Forexample, all postings to a social network by favorite contacts may bedisplayed by default, whereas postings by non-favorite contacts may bedisplayed only occasionally or only in response to an explicit requestby the individual that they be displayed. As another example, in someimplementations, favorite contacts are eligible to become selectedfollowers of an individual in an asymmetric social network, whereasnon-favorite contacts may not. As yet another example, in someimplementations, favorite contacts may have unrestricted access to mediafiles or other content posted to a media file sharing network or amember network by the individual who has designated the contact as afavorite. As yet another example, in some implementations, favoritecontacts may have unrestricted access to information identifying anindividual's current location. Information identifying a contact as afavorite contact can be stored in association with the contactinformation on device 105. In the illustrated implementation, widget 415is an iconic graphical indicium that resembles a star with a plus signand represents that the addition of the contact identified by theidentifier to a collection of favorite contacts is triggered by userinteraction.

As yet another example, in the illustrated implementation, widget 420 isan interactive element that, in response to user interaction, triggersthe deletion of the contact identified by the identifier which isassociated with the interactive widget that triggers the display ofaction widget collection 305. The deletion of a contact can includedeleting the information characterizing the contact from a data storagedevice in device 105. In the illustrated implementation, widget 420 isan iconic graphical indicium that resembles the letter “X” andrepresents that the deletion of a contact is triggered by userinteraction.

In the illustrated implementation, the action widgets in collection 405are grouped together in the same area 335 that included collection 305in presentation 300 (FIG. 3). Area 335 remains demarcated from otherportions of presentation 300 by border 340, which includes pointedindicium 345 directed toward area 255 that is associated with theinteractive widget that triggered the display of action widgetcollection 305. Contact identifier 210 is not obscured by action widgetcollection 405 but rather both contact identifier 210 and action widgetcollection 405 are both visible in presentation 400.

FIG. 5 is a schematic representation of the display of a presentation500 on a portion of touchscreen 115 of device 105. Presentation 500includes a collection of message records 505, 510, 515, 520 that eachinclude information characterizing a message that has been received bydevice 105. The messages can be, e.g., electronic mail messages, chat orother text messages, messages posted over a member network, or the like.In the illustrated implementation, message records 505, 510, 515, 520include information characterizing received messages. In otherimplementations, message records 505, 510, 515, 520 include informationcharacterizing sent messages or a combination of sent and receivedmessages.

Each message record 505, 510, 515, 520 is associated with a respectiveinteractive widget 530, 535, 540, 545 by positioning or arrangement onpresentation 500. Each interactive widget 530, 535, 540, 545 is aninteractive element that, in response to user interaction, triggers thedisplay of a collection of additional interactive elements. Theadditional interactive elements trigger the performance of additionaldata processing or other actions that are directed to the messagecharacterized in the associated record, as described further below.

In the illustrated implementation, each message record 505, 510, 515,520 is associated with a respective interactive widget 530, 535, 540,545 by virtue of positioning adjacent an area 555 that is dedicated tothe display of information characterizing a single message. Inparticular, interactive widgets 530, 535, 540, 545 are positionedlaterally adjacent to a counterparty identifier in respective of messagerecords 505, 510, 515, 520 (i.e., to the right in the illustratedimplementation). In the illustrated implementation, areas 555 aredemarcated from one another, and from the remainder of presentation 500,by borders 560. In other implementations, areas 555 can be demarcatedusing color, empty expanses, or other visual features. In otherimplementations, interactive widgets 530, 535, 540, 545 can bepositioned within areas 555.

In the illustrated implementation, each message record 505, 510, 515,520 includes a counterparty identifier 565, message text 570, andmessage transaction information 575. Counterparty identifiers 565 arethe names or other information that identifies a counterparty to themessage characterized by the respective of message records 505, 510,515, 520. In the illustrated implementation, counterparty identifiers565 are textual but other identifiers such as graphical, iconic, ornumeric identifiers can also be used.

Message text 570 is at least a portion of the textual content of themessages characterized by the respective of message records 505, 510,515, 520. The textual content can include the body of the message or thesubject line of the message. In the illustrated implementation, messagerecords 505, 510, 515, 520 include information characterizing messagesreceived over an asymmetric social network that limits the size ofpostings. As a result, message text 570 often includes the completetextual content of such postings.

Message transaction information 575 is textual or other indicia thatcharacterize one or more transactional properties of the messagescharacterized by the respective of message records 505, 510, 515, 520.For example, message transaction information 575 can characterize thetime when the message was sent, the location from where the message wassent, and the transaction history of the message. The transactionalhistory can include, e.g., whether the message has been forwarded or isa reply to a previous message.

In the illustrated implementation, each message record 505, 510, 515,520 also includes a graphical indicium 580 that characterizes thecounterparty on the message characterized by the respective of messagerecords 505, 510, 515, 520. Each graphical indicium 580 is anphotograph, an icon, or other graphical representation of thecounterparty on the characterized message. In some implementations,graphical indicia 580 are likenesses of or identical to the graphicalindicia 265 that characterize contacts and that are displayed inpresentations 200, 300, 400 (FIGS. 2, 3, 4), as shown. Graphical indicia580 can be stored in one or more memory devices of device 105 inconjunction with contact information.

In other implementations, each message record 505, 510, 515, 520 caninclude additional information characterizing a message, such indiciaindicating whether a message has been read, indicia indicating whetherthe message has been labeled with a priority, an urgent, or otherdesignator, and the like.

When device 105 is a portable, handheld device, each area 555 can occupya majority of the width of touchscreen 115. Further, areas 555 arealigned with one another and arranged one above the other to span amajority of the height of touchscreen 115. In particular, counterpartyidentifiers 565, message text 570, message transaction information 575,graphical indicia 580, and widgets 530, 535, 540, 545 in different areas555 are aligned with one another. Such an arrangement lists informationcharacterizing the messages in a convenient format that is familiar tomany individuals. Other layouts are possible, e.g., in other contexts.By way of example, if device 105 includes a relatively largertouchscreen 115, then areas 555 can be arranged differently and/or spanrelatively smaller portions of touchscreen 115.

In some implementations, the display of additional message records andconcomitant removal one or more of message records 505, 510, 515, 520can be triggered by user interaction with one or more of input elements120 and/or presentation 500. For example, in some implementations,presentation 500 can trigger scrolling navigation through a collectionof message information in response to touchscreen 115 identifying upwardor downward movement of a finger or other element across presentation500. As another example, in some implementations, presentation 500 caninclude additional interactive widgets that trigger, in response to userinteraction, scrolling navigation through a collection of messageinformation.

Presentation 500 can be displayed in accordance with one or more sets ofmachine-readable instructions that are performed by one or more dataprocessing devices housed in housing 110 of device 105, as describedfurther below. The instructions can cause device 105 to displaypresentation 500 at various points in a set of data processingactivities. For example, the instructions can cause device 105 todisplay presentation 500 in response to user interaction with a widgetthat indicates that a user wishes to make a selection from a collectionof electronic mail, chat or other text, or social network messages.

FIG. 6 is a schematic representation of the display of a presentation600 on a portion of touchscreen 115 of device 105. Presentation 600 isdisplayed on touchscreen 115 in response to user interaction withinteractive widget 530 that is associated with message record 505. Theuser interaction with interactive widget 530 that triggers the displayof presentation 300 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 500,presentation 600 also includes an action widget collection 605. Actionwidget collection 605 is a collection of interactive elements that, inresponse to user interaction, trigger data processing or other actionsdirected to the message which is characterized in a message recordassociated with the interactive widget that triggers the display of theaction widget collection. The user interaction that triggers the actionscan be, e.g., a single or a double click or tap on a particular actionwidget in collection 605 or the “dragging and dropping” of the messagerecord that is associated with the interactive widget that triggers thedisplay of action widget collection 605 onto a particular action widgetin collection 605.

In the illustrated implementation, action widget collection 605 includesa mark-as-favorite widget 610, a reply widget 615, a repost widget 620,a delete widget 625, and a locate-on-map widget 630. In the illustratedimplementation, widgets 610, 615, 620, 625, 630 are iconic graphicalindicia that represent the actions triggered by user interactiontherewith, as described further below.

Mark-as-favorite widget 610 is an interactive element that, in responseto user interaction, changes the message that is characterized in themessage record associated with the interactive widget that triggers thedisplay of action widget collection 605 into a “favorite” message.Favorite messages are messages that have been identified by a user ofdevice 105 as messages that will be treated differently from the othermessages stored in a data storage device of device 105. Favoritemessages are thus generally a proper subset of the stored messages.Favorite messages can be treated differently from other messages in avariety of different ways. For example, in some implementations,favorite messages can added to a user's profile page or other collectionin a social network. For example, favorite messages can be posted orreposted to an asymmetric social network, as in activities 1710, 1725(FIG. 17). As another example, in some implementations, favoritemessages may be exempted from certain automated processes, such asautomatic deletion of messages from a data storage device in device 105or automatic removal of a message record from a presentation ontouchscreen 115 as new, unread messages are received by device 105.Information identifying a message as a favorite message can be stored inassociation with the message information on device 105. In theillustrated implementation, mark-as-favorite widget 610 is an iconicgraphical indicium that resembles a star and represents that theaddition of the message that is characterized in a message recordassociated with the interactive widget that triggers the display ofaction widget collection 605 is to be marked as a favorite message inresponse to user interaction.

Reply widget 615 is an interactive element that, in response to userinteraction, triggers the display of a presentation for authoring areply message to the counterparty identified by the counterpartyidentifier 565 in the message record associated with the interactivewidget that triggers the display of action widget collection 605. Thereply message can be directed to the electronic address from which themessage characterized in the message record originated. In theillustrated implementation, reply widget 615 is an iconic graphicalindicium that resembles an arrow changing direction and represents thatthe display of a presentation for authoring an reply message istriggered by user interaction.

Repost widget 620 is an interactive element that, in response to userinteraction, triggers the “reposting”—to the social network from whichit originated or to another social network—of the message that ischaracterized in the message record associated with the interactivewidget that triggers the display of action widget collection 605. In thecontext of an asymmetric social network, reposting a message can includetransmitting the message to followers of the user who interacts withdevice 105, as described further below. In the illustratedimplementation, repost widget 620 is an iconic graphical indicium thatresembles a pair of arrows, each changing direction to arrive at theothers tail, and represents that the reposting of the message istriggered by user interaction.

Delete widget 625 is an interactive element that, in response to userinteraction, triggers the deletion of the message that is characterizedin the message record associated with the interactive widget thattriggers the display of action widget collection 605. The deletion of amessage can include deleting the information characterizing the messagefrom a data storage device in device 105. In the illustratedimplementation, delete widget 625 is an iconic graphical indicium thatresembles a trash can and represents that the deletion of a contact istriggered by user interaction.

Locate-on-map widget 630 is an interactive element that, in response touser interaction, triggers the display of a map that includes an indiumidentifying the location from where the message that is characterized inthe message record associated with the interactive widget that triggersthe display of action widget collection 605 was sent. In someimplementations, presentation 600 can be removed from touchscreen 115and replaced with such a map in response to user interaction withlocate-on-map widget 630. In the illustrated implementation,locate-on-map widget 630 is a tear-drop-shaped iconic graphical indiciumand represents that the display of such a map is triggered by userinteraction.

In the illustrated implementation, the action widgets in collection 305are grouped together in an area 635 that appears to be overlaid uponother portions of presentation 500 that are not visible in presentation600. In particular, area 635 appears to obscure at least a portion ofthe area 555 that includes information characterizing a differentmessage. As a result, at least a portion of counterparty identifier 565,message text 570, message transaction information 575, and graphicalindicia 580 are not visible in presentation 600 and appear to beobscured by the overlaid area 635.

The counterparty identifier 565 that is in record 505, which itself isassociated with the interactive widget 530 that triggers the display ofaction widget collection 605, is not obscured by action widgetcollection 605. In other words, this counterparty identifier 565 andaction widget collection 605 are both visible in presentation 600. Inthe illustrated implementation, all of the message-characterizinginformation in record 505 remains visible notwithstanding thepresentation of action widget collection 605 in presentation 600.Indeed, in the illustrated implementation, area 555 of message record505 remains visible in its entirety except for a relatively smallincursion by a pointed indicium, as described further below.

In the illustrated implementation, area 635 is demarcated from otherportions of presentation 600 by an outer border 640. In otherimplementations, area 635 can be demarcated from other portions ofpresentation 600 by color or shade, by empty expanses, or by othervisual features that convey that widgets 610, 615, 620, 625, 630commonly belong to collection 605.

In the illustrated implementation, outer border 640 of area 635 includesa pointed indicium 645 that is directed toward area 555 that isassociated with the interactive widget 530 that triggers the display ofaction widget collection 605. The directionality of pointed indicium 645thus indicates that the actions triggered by user interaction withwidgets 610, 615, 620, 625, 630 are directed to the contact that isassociated with that same interactive widget. In the illustratedimplementation, pointed indicium 645 extends outwardly from a relativelystraighter portion of border 640 and extends across border 560 thatdemarcates area 555.

In the illustrated implementation, widgets 610, 615, 620, 625, 630 incollection 605 are arranged adjacent one another to span an area 635that is wider than it is tall. In the illustrated implementation, area635 spans a majority of the width of touchscreen 115. In this, therelative sizes of the height and width dimensions of area 635 follow therelative sizes of the height and width dimensions of areas 555. Inparticular, areas 555 are generally strip-shaped elements that span amajority of the width W of touchscreen 115. Area 635 is also a generallystrip-shaped element that spans a majority of the width W of touchscreen115. In the illustrated implementation, the height of the strip of area635 is smaller than the height of the strips of areas 555, although thisis not necessarily the case. Indeed, in some implementations, the heightof the strip of area 635 can be the same as or larger than the height ofthe strips of areas 555. Other layouts of area 635 are possible, e.g.,in other contexts. By way of example, if device 105 includes arelatively larger touchscreen 115 than in the illustratedimplementation, then area 635 can be arranged differently and/or span arelatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 610, 615, 620, 625, 630 incollection 605 are demarcated from one another by borders 650. In otherimplementations, widgets 610, 615, 620, 625, 630 can be demarcated fromone another by color or shade, by empty expanses, or by other visualfeatures that convey that widgets 610, 615, 620, 625, 630 differ fromone another.

In some implementations, a different action widget collection thatincludes least one interactive element that is not found in actionwidget collection 605 and excludes at least one interactive element thatis found in action widget collection 605 can be presented on touchscreen115 in response to user interaction with one or more interactiveelements. For example, in some implementations, a different actionwidget collection can be displayed on touchscreen 115 in response to auser dragging a finger or other element across area 635 in presentation600. In transitioning between action widget collection 605 and such adifferent action widget collection, widgets can appear to scroll intoand out of area 635 in the direction that a finger or other element isdragged.

FIG. 7 is a schematic representation of the display of a presentation700 on a portion of touchscreen 115 of device 105. Presentation 700includes a collection of media records 705, 710, 715, 720 that eachinclude information characterizing a media file, such as an image, musicor video file. In the illustrated implementation, media records 705,710, 715, 720 each include information characterizing an image. Thecharacterized images can be, e.g., photographs, drawings, icons, orother graphical elements. The characterized media files can be stored ondevice 105 or available for download from a server that is accessibleover the Internet. For example, the characterized media files can beavailable from social network server 170 or media server 180.

Each media record 705, 710, 715, 720 is associated with a respectiveinteractive widget 725, 730, 735, 740 by positioning or arrangement onpresentation 700. Each interactive widget 725, 730, 735, 740 is aninteractive element that, in response to user interaction, triggers thedisplay of a collection of additional interactive elements. Theadditional interactive elements trigger the performance of additionaldata processing or other actions that are directed to the media filescharacterized in the associated media record, as described furtherbelow.

In the illustrated implementation, each media record 705, 710, 715, 720is associated with a respective interactive widget 725, 730, 735, 740 byvirtue of common positioning within an area 755 that is dedicated to thedisplay of information characterizing a single media file. Interactivewidgets 725, 730, 735, 740 are positioned laterally adjacent torespective of media file identifiers in media records 705, 710, 715, 720(i.e., to the right in the illustrated implementation). In theillustrated implementation, areas 755 are demarcated from one another,and from the remainder of presentation 700, by borders 760. In otherimplementations, areas 755 can be demarcated using color, emptyexpanses, or other visual features. In other implementations,interactive widgets 725, 730, 735, 740 can be positioned adjacent areas755.

Each media record 705, 710, 715, 720 includes a media file identifier770 that each identify the media file characterized in the respectivemedia record 705, 710, 715, 720. In the illustrated implementation,media file identifiers 770 are likenesses of the characterized images.The likenesses can be thumbnail-sized reproductions of the characterizedimages or other graphical elements that resemble the characterizedimages. In other implementations, media file identifiers 770 can be aname of the media file or other textual or numeric identifier. In someimplementations, each media record 705, 710, 715, 720 can includemultiple media file identifiers such as, e.g., both a likeness and atextual or numeric identifier. In some implementations, each mediarecord 705, 710, 715, 720 can also include additional informationcharacterizing media files, such as the names of individuals or othertags or captions associated with the media files. In someimplementations, each media record 705, 710, 715, 720 can also includeadditional information characterizing transactional properties of themedia file, such as when the media file was created or saved or fromwhence the media file originated.

When device 105 is a portable, handheld device, each area 755 can occupya majority of the width of touchscreen 115. Further, areas 755 arealigned with one another and arranged one above the other to span amajority of the height of touchscreen 115. In particular, media fileidentifiers 770 in different areas 755 are aligned with one another.Such an arrangement lists information characterizing the media files ina convenient format that is familiar to many individuals. Other layoutsare possible, e.g., in other contexts. By way of example, if device 105includes a relatively larger touchscreen 115, then areas 755 can bearranged differently and/or span relatively smaller portions oftouchscreen 115.

In some implementations, the display of additional media records andconcomitant removal one or more of media records 705, 710, 715, 720 canbe triggered by user interaction with one or more of input elements 120and/or presentation 700. For example, in some implementations,presentation 700 can trigger scrolling navigation through a collectionof media files in response to touchscreen 115 identifying upward ordownward movement of a finger or other element across presentation 700.As another example, in some implementations, presentation 700 caninclude additional interactive widgets that trigger, in response to userinteraction, scrolling navigation through a collection of media files.

Presentation 700 can be displayed in accordance with one or more sets ofmachine-readable instructions that are performed by one or more dataprocessing devices housed in housing 110 of device 105, as describedfurther below. The instructions can cause device 105 to displaypresentation 700 at various points in a set of data processingactivities. For example, the instructions can cause device 105 todisplay presentation 700 in response to user interaction with a widgetthat indicates that a user wishes to make a selection from a collectionof media files.

FIG. 8 is a schematic representation of the display of a presentation800 on a portion of touchscreen 115 of device 105. Presentation 800 isdisplayed on touchscreen 115 in response to user interaction withinteractive widget 740 that is associated with message record 720. Theuser interaction with interactive widget 740 that triggers the displayof presentation 800 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 700,presentation 800 also includes an action widget collection 805. Actionwidget collection 805 is a collection of interactive elements that, inresponse to user interaction, trigger data processing or other actionsdirected to the media file which is characterized in an media recordassociated with the interactive widget that triggers the display of theaction widget collection. The user interaction that triggers the actionscan be, e.g., a single or a double click or tap on a particular actionwidget in collection 805 or the “dragging and dropping” of the mediarecord that is associated with the interactive widget that triggers thedisplay of action widget collection 805 onto a particular action widgetin collection 805.

In the illustrated implementation, action widget collection 805 includesa view widget 810, an edit caption widget 815m a delete widget 820, andan information widget 825.

View widget 810 is an interactive element that, in response to userinteraction, triggers the display of the media file that ischaracterized in the media record associated with the interactive widgetthat triggers the display of action widget collection 805. In someimplementations, presentation 800 can be removed from touchscreen 115and replaced with the media file in response to user interaction withview widget 810. In the illustrated implementation, view widget 810 is agraphical indicium that resembles a pair of binoculars, and representsthat the display of such a media file is triggered by user interaction.

Caption edit widget 815 is an interactive element that, in response touser interaction, triggers the display of interactive elements forediting the caption of media file that is characterized in the mediarecord associated with the interactive widget that triggers the displayof action widget collection 805. Such editing can change a caption thatis stored in device 105 or a caption stored at a server that isaccessible over the Internet, such as social network server 170 or photoserver 180. In the illustrated implementation, caption edit widget 315is an iconic graphical indicium that resembles a writing instrument andrepresents that editing of a media file caption is triggered by userinteraction.

Delete widget 820 is an interactive element that, in response to userinteraction, triggers the deletion of the media file that ischaracterized in the media record associated with the interactive widgetthat triggers the display of action widget collection 805. The deletionof a media file can include deleting the media file and informationcharacterizing the media file from a data storage device in device 105or from a server that is accessible over the Internet, such as socialnetwork server 170 or photo server 180. In the illustratedimplementation, delete widget 820 is an iconic graphical indicium thatresembles the letter “X” and represents that the deletion of a mediafile is triggered by user interaction.

Information widget 825 is an interactive element that, in response touser interaction, triggers the display of additional informationcharacterizing the media file that is characterized in the media recordassociated with the interactive widget that triggers the display ofaction widget collection 805. The additional information can include,e.g., a name of the media file or other textual or numeric identifier ofthe media file, the names of individuals or other tags or captionsassociated with the media file, information characterizing transactionalproperties of the media file (such as when the media file was created orsaved or from whence the media file originated), or the like. Theadditional information can be drawn from a data storage device in device105 or from a server that is accessible over the Internet, such associal network server 170 or photo server 180. In the illustratedimplementation, information widget 825 is an iconic graphical indiciumthat resembles the letter “i” and represents that informationcharacterizing a media file is triggered by user interaction.

In the illustrated implementation, the action widgets in collection 805are grouped together in an area 835 that appears to be overlaid uponother portions of presentation 700 that are not visible in presentation800. In particular, area 835 appears to obscure at least a portion ofthe area 755 that includes information characterizing a different mediafile. As a result, at least a portion of media file identifier 770 inrecord 715 is not visible in presentation 800 and appears to be obscuredby the overlaid area 835.

The media file identifier 770 that is in record 720, which itself isassociated with the interactive widget 730 that triggers the display ofaction widget collection 805, is not obscured by action widgetcollection 805. In other words, this media file identifier 770 andaction widget collection 805 are both visible in presentation 800. Inthe illustrated implementation, all of the message-characterizinginformation in record 720 remains visible notwithstanding thepresentation of action widget collection 805 in presentation 800.Indeed, in the illustrated implementation, area 755 of message record720 remains visible in its entirety except for a relatively smallincursion by a pointed indicium, as described further below.

In the illustrated implementation, area 835 is demarcated from otherportions of presentation 800 by an outer border 840. In otherimplementations, area 835 can be demarcated from other portions ofpresentation 800 by color or shade, by empty expanses, or by othervisual features that convey that widgets 810, 815, 820, 825 commonlybelong to collection 805.

In the illustrated implementation, outer border 840 of area 835 includesa pointed indicium 845 that is directed toward area 755 that isassociated with the interactive widget 730 that triggers the display ofaction widget collection 805. The directionality of pointed indicium 845thus indicates that the actions triggered by user interaction withwidgets 810, 815, 820, 825 are directed to the media file that ischaracterized in media record 720. In the illustrated implementation,pointed indicium 845 extends outwardly from a relatively straighterportion of border 840 and extends across border 760 that demarcates area755.

In the illustrated implementation, widgets 810, 815, 820, 825 incollection 805 are arranged adjacent one another to span an area 835that is wider than it is tall. In the illustrated implementation, area835 spans a majority of the width of touchscreen 115. In this, therelative sizes of the height and width dimensions of area 835 follow therelative sizes of the height and width dimensions of areas 755. Inparticular, areas 755 are generally strip-shaped elements that span amajority of the width W of touchscreen 115. Area 835 is also a generallystrip-shaped element that spans a majority of the width W of touchscreen115. In the illustrated implementation, the height of the strip of area835 is smaller than the height of the strips of areas 755, although thisis not necessarily the case. Indeed, in some implementations, the heightof the strip of area 835 can be the same as or larger than the height ofthe strips of areas 755. Other layouts of area 835 are possible, e.g.,in other contexts. By way of example, if device 105 includes arelatively larger touchscreen 115 than in the illustratedimplementation, then area 835 can be arranged differently and/or span arelatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 810, 815, 820, 825 incollection 805 are demarcated from one another by borders 850. In otherimplementations, widgets 810, 815, 820, 825 can be demarcated from oneanother by color or shade, by empty expanses, or by other visualfeatures that convey that widgets 810, 815, 820, 825 differ from oneanother.

In some implementations, a different action widget collection thatincludes least one interactive element that is not found in actionwidget collection 805 and excludes at least one interactive element thatis found in action widget collection 805 can be presented on touchscreen115 in response to user interaction with one or more interactiveelements. For example, in some implementations, a different actionwidget collection can be displayed on touchscreen 115 in response to auser dragging a finger or other element across area 835 in presentation800. In transitioning between action widget collection 805 and such adifferent action widget collection, widgets can appear to scroll intoand out of area 835 in the direction that a finger or other element isdragged.

FIG. 9 is a schematic representation of the display of a presentation900 on a portion of touchscreen 115 of device 105. Presentation 900includes a collection of media records 902, 904, 906, 908, 912, 914,916, 918 that each include information characterizing a media file. Thecharacterized media files can be, e.g., photographs, drawings, icons, orother graphical elements. The characterized media files can be stored ondevice 105 or available for download from a server that is accessibleover the Internet. For example, the characterized media files can beavailable from social network server 170 or media file server 180.

Each media record 902, 904, 906, 908, 912, 914, 916, 918 is associatedwith a respective interactive widget 922, 924, 926, 928, 932, 934, 936,938 by positioning or arrangement on presentation 900. Each interactivewidget 902, 904, 906, 908, 912, 914, 916, 918 is an interactive elementthat, in response to user interaction, triggers the display of acollection of additional interactive elements. The additionalinteractive elements trigger the performance of additional dataprocessing or other actions that are directed to the media filescharacterized in the associated media record, as described furtherbelow.

In the illustrated implementation, each media record 902, 904, 906, 908,912, 914, 916, 918 is associated with a respective interactive widget902, 904, 906, 908, 912, 914, 916, 918 by virtue of common positioningwithin an area 955 that is dedicated to the display of informationcharacterizing a single media file. Interactive widgets 902, 904, 906,908, 912, 914, 916, 918 are positioned laterally adjacent to respectiveof media file identifiers in media records 902, 904, 906, 908, 912, 914,916, 918 (i.e., to the right in the illustrated implementation). In theillustrated implementation, areas 955 are demarcated from one another,and from the remainder of presentation 900, by borders 960. In otherimplementations, areas 955 can be demarcated using color, emptyexpanses, or other visual features. In other implementations,interactive widgets 922, 924, 926, 928, 932, 934, 936, 938 can bepositioned adjacent areas 955.

Each media record 902, 904, 906, 908, 912, 914, 916, 918 includes amedia file identifier 970 that each identify the media filecharacterized in the respective media record 902, 904, 906, 908, 912,914, 916, 918. In the illustrated implementation, media file identifiers970 are likenesses of the characterized images. The likenesses can bethumbnail-sized reproductions of the characterized images or othergraphical elements that resemble the characterized images. In otherimplementations, media file identifiers 970 can be a name of the mediafile or other textual or numeric identifier. In some implementations,each media record 902, 904, 906, 908, 912, 914, 916, 918 can includemultiple media file identifiers such as, e.g., both a likeness and atextual or numeric identifier. In some implementations, each mediarecord 902, 904, 906, 908, 912, 914, 916, 918 can also includeadditional information characterizing media files, such as the names ofindividuals or other tags or captions associated with the media files.In some implementations, each media record 902, 904, 906, 908, 912, 914,916, 918 can also include additional information characterizingtransactional properties of the media file, such as when the media filewas created or saved or from whence the media file originated.

When device 105 is a portable, handheld device, each area 955 can occupya approximately one half of the width of touchscreen 115. Suchdimensioning is particular convenient for images, which—absentediting—are generally dimensioned to have size ratios that facilitatesuch a presentation. Areas 955 are aligned with one another and arrangedone above the other to span a majority of the height of touchscreen 115.In particular, media file identifiers 970 in different areas 955 arealigned with one another. Such an arrangement lists informationcharacterizing the media files in a convenient format. Other layouts arepossible, e.g., in other contexts. By way of example, if device 105includes a relatively larger touchscreen 115, then areas 955 can bearranged differently and/or span relatively smaller portions oftouchscreen 115.

In some implementations, the display of additional media records andconcomitant removal one or more of media records 902, 904, 906, 908,912, 914, 916, 918 can be triggered by user interaction with one or moreof input elements 120 and/or presentation 900. For example, in someimplementations, presentation 900 can trigger scrolling navigationthrough a collection of media files in response to touchscreen 115identifying upward or downward movement of a finger or other elementacross presentation 900. As another example, in some implementations,presentation 900 can include additional interactive widgets thattrigger, in response to user interaction, scrolling navigation through acollection of media files.

Presentation 900 can be displayed in accordance with one or more sets ofmachine-readable instructions that are performed by one or more dataprocessing devices housed in housing 110 of device 105, as describedfurther below. The instructions can cause device 105 to displaypresentation 900 at various points in a set of data processingactivities. For example, the instructions can cause device 105 todisplay presentation 900 in response to user interaction with a widgetthat indicates that a user wishes to make a selection from a collectionof media files.

FIG. 10 is a schematic representation of the display of a presentation1000 on a portion of touchscreen 115 of device 105. Presentation 1000 isdisplayed on touchscreen 115 in response to user interaction withinteractive widget 934 that is associated with message record 914. Theuser interaction with interactive widget 934 that triggers the displayof presentation 1000 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 900,presentation 1000 also includes an action widget collection 1005. Actionwidget collection 1005 is a collection of interactive elements that, inresponse to user interaction, trigger data processing or other actionsdirected to the media file which is characterized in an media recordassociated with the interactive widget that triggers the display of theaction widget collection. The user interaction that triggers the actionscan be, e.g., a single or a double click or tap on a particular actionwidget in collection 1005 or the “dragging and dropping” of the messagerecord that is associated with the interactive widget that triggers thedisplay of action widget collection 1005 onto a particular action widgetin collection 1005.

In the illustrated implementation, action widget collection 1005includes view widget 810, edit widget 815, delete widget 820, andinformation widget 825, as described above (FIG. 8).

In the illustrated implementation, the action widgets in collection 1005are grouped together in an area 1035 that appears to be overlaid uponother portions of presentation 900 that are not visible in presentation1000. In particular, area 1035 appears to obscure at least a portion oftwo different areas 955 that each includes information characterizing adifferent media file. As a result, at least a portion of media fileidentifiers 970 in records 906, 916 are not visible in presentation 1000and appear to be obscured by the overlaid area 1035.

The media file identifier 970 that is in record 914, which itself isassociated with the interactive widget 934 that triggers the display ofaction widget collection 805, is not obscured by action widgetcollection 1005. In other words, this media file identifier 970 andaction widget collection 1005 are both visible in presentation 1000. Inthe illustrated implementation, all of the message-characterizinginformation in record 920 remains visible notwithstanding thepresentation of action widget collection 1005 in presentation 1000.Indeed, in the illustrated implementation, area 955 of message record914 remains visible in its entirety except for a relatively smallincursion by a pointed indicium, as described further below.

In the illustrated implementation, area 1035 is demarcated from otherportions of presentation 1000 by an outer border 1040. In otherimplementations, area 1035 can be demarcated from other portions ofpresentation 1000 by color or shade, by empty expanses, or by othervisual features that convey that widgets 1010, 1015, 1020, 1025 commonlybelong to collection 1005.

In the illustrated implementation, outer border 1040 of area 1035includes a pointed indicium 1045 that is directed toward area 914 thatis associated with the interactive widget 934 that triggers the displayof action widget collection 1005. The directionality of pointed indicium1045 thus indicates that the actions triggered by user interaction withwidgets 1010, 1015, 1020, 1025 are directed to the media file that ischaracterized in media record 914. In the illustrated implementation,pointed indicium 1045 extends outwardly from a relatively straighterportion of border 1040 and extends across border 960 that demarcatesarea 955 that is associated with interactive widget 934.

In the illustrated implementation, widgets 810, 815, 820, 825 incollection 1005 are arranged adjacent one another to span an area 1035that is wider than it is tall. In the illustrated implementation, area1035 is a generally strip-shaped element that spans a majority of thewidth W of touchscreen 115. In the illustrated implementation, theheight of the strip of area 1035 is smaller than the height of thestrips of areas 955, although this is not necessarily the case. Indeed,in some implementations, the height of the strip of area 1035 can be thesame as or larger than the height of the strips of areas 955. Otherlayouts of area 1035 are possible, e.g., in other contexts. By way ofexample, if device 105 includes a relatively larger touchscreen 115 thanin the illustrated implementation, then area 1035 can be arrangeddifferently and/or span a relatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 810, 815, 820, 825 incollection 1005 are demarcated from one another by borders 1050. Inother implementations, widgets 810, 815, 820, 825 can be demarcated fromone another by color or shade, by empty expanses, or by other visualfeatures that convey that widgets 810, 815, 820, 825 differ from oneanother.

In some implementations, a different action widget collection thatincludes least one interactive element that is not found in actionwidget collection 1005 and excludes at least one interactive elementthat is found in action widget collection 1005 can be presented ontouchscreen 115 in response to user interaction with one or moreinteractive elements. For example, in some implementations, a differentaction widget collection can be displayed on touchscreen 115 in responseto a user dragging a finger or other element across area 1035 inpresentation 1000. In transitioning between action widget collection1005 and such a different action widget collection, widgets can appearto scroll into and out of area 1035 in the direction that a finger orother element is dragged.

FIG. 11 is a schematic representation of the display of a presentation1100 of an electronic document 1102 on a portion of touchscreen 115 ofdevice 105. An electronic document is a collection of machine-readabledata. Electronic documents are generally individual files that areformatted in accordance with a defined format (e.g., HTML, MS Word, orthe like). Electronic documents can be electronically stored anddisseminated. In some cases, electronic documents include media contentsuch as images, audio content, and video content, as well as text andlinks to other electronic documents. Electronic documents need not beindividual files. Instead, an electronic document can be stored in aportion of a file that holds other documents or in multiple coordinatedfiles.

Electronic document 1102 can be stored on device 105 or accessible overthe Internet. For example, presentation 1100 can be formed by aweb-browser that has downloaded electronic document 1102 from a serverthat is accessible over the Internet.

Electronic document 1102 includes a document title 1105, a body of text1110, and images 1115, 1120, 1125. Document title 1105 is a textual orother heading that identifies electronic document 1102. In someimplementations, document title 1105 is a hyperlink thatself-referentially refers to electronic document 1102 and acts as aninteractive element that, in response to user interaction, triggers thedisplay of a collection of additional interactive elements. Theadditional interactive elements trigger the performance of additionaldata processing or other actions that are directed to electronicdocument 1102, as described further below.

Body of text 1110 includes interactive elements 1130, 1135. Interactiveelements 1130, 1135 are hyperlinks that refer to other electronicdocuments or to portions of other electronic documents. Interactiveelements 1130, 1135 are generally formed from text that is integratedinto text body 1110. In some implementations, interactive elements 1130,1135 trigger the display of a collection of additional interactiveelements in response to user interaction. The additional interactiveelements trigger the performance of additional data processing or otheractions that are directed to the electronic document (or portionthereof) that is referred to by interactive elements 1130, 1135, asdescribed further below.

In some implementations, one or more of images 1115, 1120, 1125 are alsointeractive elements that, in response to user interaction, trigger thedisplay of a collection of additional interactive elements. Theadditional interactive elements trigger the performance of additionaldata processing or other actions that are directed to the respectiveimage 1115, 1120, 1125, as described further below.

FIG. 12 is a schematic representation of the display of a presentation1200 on a portion of touchscreen 115 of device 105. Presentation 1200 isdisplayed on touchscreen 115 in response to user interaction withinteractive element 1130 that is formed from text that is integratedinto text body 1110 of electronic document 1102. The user interactionwith interactive element 1130 that triggers the display of presentation1200 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 1100,presentation 1200 also includes an action widget collection 1205. Actionwidget collection 1205 is a collection of interactive elements that, inresponse to user interaction, trigger data processing or other actionsdirected to the reference to the electronic document (or to portionthereof) in the interactive element that triggers the display of theaction widget collection. The user interaction that triggers the actionscan be, e.g., a single or a double click or tap on a particular actionwidget in collection 1205 or the “dragging and dropping” of thereference to the electronic document that triggers the display of actionwidget collection 1205 onto a particular action widget in collection1205.

In the illustrated implementation, action widget collection 1205includes an open widget 1210, a save widget 1215, and a share widget1220. Open widget 1210 is an interactive element that, in response touser interaction, triggers the opening of the electronic document (orportion thereof) that is referenced in the interactive element thattriggers the display of action widget collection 1205. In theillustrated implementation, open widget 1210 is an iconic graphicalindicium that resembles an opened can and represents that opening of anelectronic document is triggered by user interaction.

Save widget 1215 is an interactive element that, in response to userinteraction, triggers saving of the reference to the electronic document(or portion thereof) in the interactive element that triggers thedisplay of action widget collection 1205. The reference can be saved,e.g., in a data storage device in device 105. In the illustratedimplementation, save widget 1215 is an iconic graphical indicium thatresembles a data storage disk and represents that storing of a referenceto the electronic document is triggered by user interaction.

Share widget 1220 is an interactive element that, in response to userinteraction, triggers the transmission of a message or the display of apresentation for authoring an message that includes the reference to theelectronic document (or portion thereof) in the interactive element thattriggers the display of action widget collection 1205. The message canbe an electronic mail message, a chat or other text message, a post to amember network, or the like. The message can be transmitted to anaddress that is stored in a data storage device of device 105. In theillustrated implementation, share widget 1220 is an iconic graphicalindicium that resembles a letter envelope and represents that thetransmission of a message or the display of a presentation for authoringa message is triggered by user interaction.

In the illustrated implementation, the action widgets in collection 1205are grouped together in an area 1235 that appears to be overlaid uponother portions of presentation 1100 that are not visible in presentation1200. In particular, area 1235 appears to obscure at least a portion ofbody of text 1110 and image 1125. However, interactive element 1130 isnot obscured by action widget collection 1205. Instead, interactiveelement 1130 is visible in presentation 1200.

In the illustrated implementation, area 1235 is demarcated from otherportions of presentation 1200 by an outer border 1240. In otherimplementations, area 1235 can be demarcated from other portions ofpresentation 1200 by color or shade, by empty expanses, or by othervisual features that convey that widgets 1210, 1215, 1220 commonlybelong to collection 1205.

In the illustrated implementation, outer border 1240 of area 1235includes a pointed indicium 1245 that is directed toward the interactiveelement 1130 that triggers the display of action widget collection 1205.The directionality of pointed indicium 1245 thus indicates that theactions triggered by user interaction with widgets 1210, 1215, 1220 aredirected to the electronic document (or portion thereof) that isreferenced by interactive element 1130. In the illustratedimplementation, pointed indicium 1245 extends outwardly from arelatively straighter portion of border 1240.

In the illustrated implementation, widgets 1210, 1215, 1220 incollection 1205 are arranged adjacent one another to span an area 1235that is wider than it is tall. In the illustrated implementation, area1235 is a generally strip-shaped element that spans a majority of thewidth W of touchscreen 115. Other layouts of area 1235 are possible,e.g., in other contexts. By way of example, if device 105 includes arelatively larger touchscreen 115 than in the illustratedimplementation, then area 1235 can be arranged differently and/or span arelatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 1210, 1215, 1220 incollection 1205 are demarcated from one another by borders 1250. Inother implementations, widgets 1210, 1215, 1220 can be demarcated fromone another by color or shade, by empty expanses, or by other visualfeatures that convey that widgets 1210, 1215, 1220 differ from oneanother.

In some implementations, a different action widget collection thatincludes least one interactive element that is not found in actionwidget collection 1205 and excludes at least one interactive elementthat is found in action widget collection 1205 can be presented ontouchscreen 115 in response to user interaction with one or moreinteractive elements. For example, in some implementations, a differentaction widget collection can be displayed on touchscreen 115 in responseto a user dragging a finger or other element across area 1235 inpresentation 1200. In transitioning between action widget collection1205 and such a different action widget collection, widgets can appearto scroll into and out of area 1235 in the direction that a finger orother element is dragged.

FIG. 13 is a schematic representation of the display of a presentation1300 on a portion of touchscreen 115 of device 105. Presentation 1300 isdisplayed on touchscreen 115 in response to user interaction with adocument title 1105 that is an interactive element. The user interactionwith document title 1105 that triggers the display of presentation 1300can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 1100,presentation 1300 also includes an action widget collection 1305. Actionwidget collection 1305 is a collection of interactive elements that, inresponse to user interaction, trigger data processing or other actionsdirected to electronic document 1102 referred to by document title 1105.The user interaction that triggers the actions can be, e.g., a single ora double click or tap on a particular action widget in collection 1305or the “dragging and dropping” of document title 1105 onto a particularaction widget in collection 1305.

In the illustrated implementation, action widget collection 1305includes open widget 1210, save widget 1215, and share widget 1220.Widgets 1210, 1215, 1220 trigger the reopening of electronic document1102, the saving of a reference to electronic document 1102, or thetransmission of a message or the display of a presentation for authoringan message that includes a reference to electronic document 1102.

In the illustrated implementation, the action widgets in collection 1305are grouped together in an area 1235 that appears to obscure at least aportion of body of text 1110, image 1115, and interactive element 1130.However, document title 1105 is not obscured by action widget collection1305 but is instead visible in presentation 1300.

In the illustrated implementation, area 1235 is demarcated from otherportions of presentation 1200 by an outer border 1240 that conveys thatwidgets 1210, 1215, 1220 commonly belong to collection 1305. Outerborder 1240 of area 1235 includes a pointed indicium 1245 that isdirected toward document title 1105. The directionality of pointedindicium 1245 thus indicates that the actions triggered by userinteraction with widgets 1210, 1215, 1220 are directed to the electronicdocument (or portion thereof) that is referenced by document title 1105.Other features of action widget collection 1305 share thecharacteristics of correspondingly numbered features in action widgetcollection 1205 (FIG. 12).

FIG. 14 is a schematic representation of the display of a presentation1400 on a portion of touchscreen 115 of device 105. Presentation 1400 isdisplayed on touchscreen 115 in response to user interaction with image1120 of electronic document 1102. The user interaction with image 1120that triggers the display of presentation 1400 can be, e.g., a single ora double click or tap.

In addition to the displayed features shared with presentation 1100,presentation 1200 also includes an action widget collection 1405. Actionwidget collection 1405 is a collection of interactive elements that, inresponse to user interaction, trigger data processing or other actionsdirected to image 1120. The user interaction that triggers the actionscan be, e.g., a single or a double click or tap on a particular actionwidget in collection 1405 or the “dragging and dropping” of image 1120onto a particular action widget in collection 1405.

In the illustrated implementation, action widget collection 1205includes a view widget 1410, a save widget 1415, and a share widget1420. View widget 1410 is an interactive element that, in response touser interaction, triggers the display of image 1120. In someimplementations, presentation 1400 can be removed from touchscreen 115and replaced with image 1120 in response to user interaction with viewwidget 1410. In the illustrated implementation, view widget 1410 is agraphical indicium that resembles a pair of binoculars, and representsthat the display of an image is triggered by user interaction.

Save widget 1415 is an interactive element that, in response to userinteraction, triggers saving of image 1120. The image can be saved,e.g., in a data storage device in device 105. In the illustratedimplementation, save widget 1415 is an iconic graphical indicium thatresembles a\ data storage disk and represents that storage of an imageis triggered by user interaction.

Share widget 1420 is an interactive element that, in response to userinteraction, triggers the transmission of a message or the display of apresentation for authoring an message that includes the image or areference to the image that triggers the display of action widgetcollection 1405. The message can be an electronic mail message, a chator other text message, a post to a member network, or the like. Themessage can be transmitted to an address that is stored in a datastorage device of device 105. In the illustrated implementation, sharewidget 1420 is an iconic graphical indicium that resembles a letterenvelope and represents that the transmission of a message or thedisplay of a presentation for authoring a message is triggered by userinteraction.

In the illustrated implementation, the action widgets in collection 1405are grouped together in an area 1435 that appears to be overlaid uponother portions of presentation 1100 that are not visible in presentation1400. In particular, area 1435 appears to obscure at least a portion ofbody of text 1110 and interactive element 1135. However, image 1120 isnot obscured by action widget collection 1205. Instead, image 1120 isvisible in presentation 1400.

In the illustrated implementation, area 1435 is demarcated from otherportions of presentation 1400 by an outer border 1440. In otherimplementations, area 1435 can be demarcated from other portions ofpresentation 1400 by color or shade, by empty expanses, or by othervisual features that convey that widgets 1410, 1415, 1420 commonlybelong to collection 1405.

In the illustrated implementation, outer border 1440 of area 1435includes a pointed indicium 1445 that is directed toward the image 1120that triggers the display of action widget collection 1405. Thedirectionality of pointed indicium 1445 thus indicates that the actionstriggered by user interaction with widgets 1410, 1415, 1420 are directedto image 1120. In the illustrated implementation, pointed indicium 1445extends outwardly from a relatively straighter portion of border 1440.

In the illustrated implementation, widgets 1410, 1415, 1420 incollection 1405 are arranged adjacent one another to span an area 1435that is wider than it is tall. In the illustrated implementation, area1435 is a generally strip-shaped element that spans a majority of thewidth W of touchscreen 115. Other layouts of area 1435 are possible,e.g., in other contexts. By way of example, if device 105 includes arelatively larger touchscreen 115 than in the illustratedimplementation, then area 1435 can be arranged differently and/or span arelatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 1410, 1415, 1420 incollection 1405 are demarcated from one another by empty expanses. Inother implementations, widgets 1410, 1415, 1420 can be demarcated fromone another by color or shade, by borders, or by other visual featuresthat convey that widgets 1410, 1415, 1420 differ from one another.

In some implementations, a different action widget collection thatincludes least one interactive element that is not found in actionwidget collection 1405 and excludes at least one interactive elementthat is found in action widget collection 1405 can be presented ontouchscreen 115 in response to user interaction with one or moreinteractive elements. For example, in some implementations, a differentaction widget collection can be displayed on touchscreen 115 in responseto a user dragging a finger or other element across area 1435 inpresentation 1400. In transitioning between action widget collection1405 and such a different action widget collection, widgets can appearto scroll into and out of area 1435 in the direction that a finger orother element is dragged.

FIG. 15 is a schematic representation of a collection 1500 of electroniccomponents. Collection 1500 can be housed in housing 110 of device 105and includes both hardware and software components, as well as one ormore data storage devices and one or more data processing devices thatperform operations for displaying presentations on touchscreen 115 ofdevice 105. For example, collection 1500 can display one or more ofpresentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200,1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20) on touchscreen 115 of device105.

Collection 1500 includes a display interface 1505, a phone interface1510, an interface 1515 with a wireless transceiver, a collection ofdata stores 1525, 1530, and a data processing system 1535. Displayinterface 1505 is a component that interfaces between a data processingsystem 1535 and touchscreen 115. Display interface 1505 can includehardware and/or software that provide a data communication path anddefines a data communication protocol for the transfer of display anduser interaction information between data processing system 1535 andtouchscreen 115. Display interface 1505 can include one or more of agraphic processing unit, a video display controller, a video displayprocessor, or other display interface.

Phone interface 1510 is a component that interfaces between dataprocessing system 1535 and a cellular or other phone. Phone interface1510 can include hardware and/or software that provide a datacommunication path and define a data communication protocol for thetransfer of information between data processing unit 1520 and the phone.

Wireless interface 1510 is a component that interfaces between dataprocessing system 1535 and a wireless transceiver. Wireless interface1510 can include hardware and/or software that provide a datacommunication path and define a data communication protocol for thetransfer of information between data processing system 1535 and thewireless transceiver.

Data stores 1525, 1530 are collections of machine—readable informationstored at one or more data storage devices. Data store 1525 stores acollection of contact information, a message log, media files, orcombinations thereof. The information stored in data store 1525 can beused to generate one or more of presentations 200, 300, 400, 500, 600,700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19,20). In this regard, among the contact information that can be stored atdata store 1525 is information characterizing contact's home and worktelephone numbers, information characterizing a contact's home page orother contributions to a social networking site or a photosharing site,information characterizing one or more electronic mail, instant message,chat, or other messaging addresses of a contact, as well as otherinformation such as postal address information, a photograph, and thelike. In some implementations, data store 1525 can also include groupinginformation characterizing groups of contacts. Such a group ofindividuals can be specified by grouping information in data store 1525.

Among the message information that can be stored in a message log isinformation characterizing past electronic mail messages, chat or othertext messages, social network postings, telephone calls, and/or othermessages. Data store 1525 can include, e.g., information characterizingthe counterparty in such messages, information characterizing the timingof the messages, information characterizing the content of the messages,information characterizing other transactional characteristics of themessages, and the like. In some implementations, data store 1525 onlystores information describing a proper subset of all messages receivedby or sent from device 105. For example, in some implementations, datastore 1525 only stores a group of the most recent messages exceptmessages that have been marked as favorites, e.g., as described above.

Among the media file information that can be stored is the media filesthemselves, likenesses of the media files, references (such as a URI) tomedia files that are stored outside of device 105, transactionalcharacteristics of the media files, and the like. In someimplementations, data store 1525 can also include user preferenceinformation that specifies user preferences for the display ofpresentations such as presentations 200, 300, 400, 500, 600, 700, 800,900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20). Forexample, data store 1525 can include information identifying the mediafiles, contacts, or messages that have been marked as favorites.

Data store 1530 stores one or more sets of machine-readable instructionsfor displaying and interpreting user interaction with presentations suchas presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100,1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20). Data store 1530 caninclude information identifying the interactive elements that are to bedisplayed in response to user interaction with different categories ofinteractive elements. For example, data store 1530 can includeinformation identifying the widgets that are to be displayed in responseto user interaction with interactive elements that are associated withcontact identifiers (e.g., widgets 230, 235, 240, 245, 250), userinteraction with interactive elements that are associated with messagerecords (e.g., widgets 530, 535, 540, 545), user interaction withinteractive elements that are associated with media records (e.g.,widgets 725, 730, 735, 740, 922, 924, 926, 928, 932, 934, 936, 938),interactive elements that self-referentially refer to an electronicdocument in which the interactive elements are found (e.g., documenttitle 1105), interactive elements in one electronic document that referto another electronic document or to another portion of an electronicdocument (e.g., interactive elements 1130, 1135), and interactive mediafiles (e.g., images 1115, 1120, 1125). In some implementations, suchinformation can be organized as shown in FIG. 16 below.

In some implementations, data store 1530 can also include, e.g., iconicgraphical indicia used form forming the interactive elements that are tobe displayed in response to user interaction with different categoriesof interactive elements, instructions for forming contact, message,media file, or other records using information drawn from data store1525, instructions for interpreting user interaction with presentations200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400,1900, 2000 (FIGS. 2-14, 19, 20) and implementing actions responsive tosuch user interaction, as described above.

Data processing system 1535 is a system of one or more digital dataprocessing devices that perform operations in accordance with the logicof one or more sets of machine-readable instructions. Data processingsystem 1535 can implement one or more modules for performing operationsdescribed herein Among the modules that can be implemented by dataprocessing system 1535 are a user interface module 1540, a variety ofdifferent server interface modules 1545, and a data aggregation module1550.

User interface module 1540 is a set of data processing activities thatdisplays presentations such as presentations 200, 300, 400, 500, 600,700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19,20) on touch screen 115, interprets user interaction with suchpresentations, and performs data processing and other actions triggeredby such user interaction. The operations performed by user interfacemodule 1540 can be performed in accordance with instructions in datastore 1530.

Server interface modules 1545 are sets of data processing activitiesthat interface with servers that are external to device 105, such asservers 165, 170, 175, 180 (FIG. 1). In general, each server interfacemodule 1545 is dedicated to obtaining information suitable for displayin a presentation from a different server. Server interface modules 1545can be, e.g., an electronic mail or message clients, as well asdedicated clients tailored to the characteristics of a specific socialor photosharing network.

The server interface modules 1545 can obtain information for display byissuing service requests to a server and extracting the formation fromthe responses to those requests. The requests and responses arecommunicated from device 105 to the relevant server over one or both ofinterfaces 1510, 1515. The information extracted from the responses tothe service requests can include, e.g., incoming electronic mail andtext messages, a name or other identifier of a counterparty, an excerptor other content from a posting on a photosharing or social networksite, a likeness of an image, a counterparty's location, transactionalinformation regarding a message or a media file, and the like.

Data aggregation module 1550 is a set of data processing activities thataggregates information drawn from data store 1525 and server interfaces1545 for display of that information in presentations such aspresentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200,1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20). In some implementations,data aggregation module 1450 compares the names or other identifiers ofcounterparties on a message with names or other identifiers informationin contact information in data store 1525 to, e.g., locate a graphicalindicium such as graphical indicia 580 that characterizes thecounterparty on the message for use in forming message records.

In general, data aggregation module 1550 includes rules for filteringmessages or other items that are characterized in a presentation such aspresentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200,1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20).

The items that are characterized in a presentation can be limited inseveral different ways, including whether the items have been marked asfavorites, whether the items involved a particular counterparty, and/orwhether the items are found in a particular memory location, such as aparticular file, directory, or location on a network. Data aggregationmodule 1550 can thus filter items to implement these and otherlimitations.

In some implementations, data aggregation module 1550 can also includeextraction rules for extracting appropriate information for presentationfrom, e.g., electronic mail and other messages stored in data store 1525and the responses to service requests received by server interfaces1545. For example, data aggregation module 1550 can extract the subjectline of electronic mail messages or a title of a posting on aphotosharing or social network for display in a presentation such aspresentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200,1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20).

FIG. 16 is a schematic representation of a collection 1600 ofinformation identifying the interactive elements that are to bedisplayed in response to user interaction with different categories ofinteractive elements. Collection 1600 can be stored in data store 1530of device 105 (FIG. 15). In the illustrated implementation, collection1600 is implemented in a data table 1605. Data table 1605 organizes theinteractive elements that are to be displayed in response to userinteraction with different categories of interactive elements into rows1610, 1612, 1614, 1615, 1620, 1625, 1630, 1635, 1640, 1645, 1650, 1655and columns 1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678,1680, 1682. Each row 1610, 1612, 1614,1615, 1620, 1625, 1630, 1635,1640, 1645, 1650, 1655 is associated with a different category ofinteractive element that are to trigger the display of additionalinteractive elements. Each column 1660, 1662, 1664, 1666, 1668, 1670,1672, 1674, 1676, 1678, 1680, 1682 includes data specifying whether aparticular additional interactive element is to be displayed in responseto user interaction with the category of interactive element associatedwith respective of rows 1610, 1612, 1614,1615, 1620, 1625, 1630, 1635,1640, 1645, 1650, 1655.

For example, in the illustrated implementation, the data in columns1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678, 1680, 1682specify that user interaction with an interactive element that isassociated with a contact identifier (e.g., any of widgets 230, 235,240, 245, 250) are to trigger the display of a view interactive element,a delete interactive element, an edit interactive element, a textinteractive element, a phone interactive element, and an emailinteractive element.

As another example, in the illustrated implementation, the data incolumns 1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678,1680, 1682 specify that user interaction with an interactive elementthat is associated with an media record (e.g., any of widgets 725, 730,735, 740, 922, 924, 926, 928, 932, 934, 936, 938) are to trigger thedisplay of a save interactive element, a favorite interactive element, aview interactive element, a delete interactive element, an editinteractive element, a post-to-social-network interactive element, andan information interactive element.

The interactive elements specified in columns 1660, 1662, 1664, 1666,1668, 1670, 1672, 1674, 1676, 1678, 1680, 1682 need not be displayed ina single action widget collection but rather can be displayed inmultiple action widget collections that are accessible, e.g., inresponse to a user dragging a finger or other element across areas 335,635, 835, 1035, 1235, 1335 in presentations 300, 400, 600, 800, 1000,1200, 1300, 1400.

FIG. 17 is a schematic representation of an implementation of acollection of activities 1700 in an asymmetric social network.Activities 1700 occur in the context of a single level asymmetric socialnetwork in which a first member can become a follower of a second memberwithout the second member necessarily becoming a follower of the firstmember. In the illustrated implementation, a first user “Apple” authorsa post 1705 using a data processing device (e.g., any of devices 105,140, 182, 190 (FIG. 1)). The data processing device can also receiveinput from the first user that triggers “posting” of post 1705. Post1705 is accordingly transmitted at 1710 to social network server 1755(e.g., server 170 (FIG. 1)), which receives the transmission, identifiesthe transmission as a posting by the first user, and identifies memberswho are related to the first member as followers in the network. Socialnetwork server 1755 then relays content from post 1705 to thosefollowers at 1715. These followers can receive and review thetransmitted content at one or more data processing devices (e.g.,devices 105, 140, 182, 190 (FIG. 1)).

One of the followers, namely, second user “Orange,” may chose to replyto the content from post 1705 and author a reply post 1720 using a dataprocessing device (e.g., devices 105, 140, 182, 190 (FIG. 1)). The dataprocessing device can also receive input from the second user thattriggers posting of reply post 1720. Reply post 1720 thus reposts atleast some of the content from post 1705 to the asymmetric socialnetwork. Reply post 1720 is accordingly transmitted at 1725 toasymmetric social network server 1755, which receives the transmission,identifies the transmission as a reply posting by the second user, andidentifies members who are related to the second member as followers inthe network. Social network server 1755 also identifies the author ofthe post that is being replied to, namely, first user “Apple.” Socialnetwork server 1755 then relays content from reply post 1720 to both thefollowers of second user “Orange” at 1730 and to the author of post 1705at 1735. The followers of second user “Orange” can receive and reviewthe transmitted content from reply post 1720 at one or more dataprocessing devices (e.g., devices 105, 140, 182, 190 (FIG. 1)). Theauthor of post 1705 (i.e., first user “Apple”) can receive and reviewthe transmitted content from reply post 1720 at one or more dataprocessing devices (e.g., devices 105, 140, 182, 190 (FIG. 1)).

As a consequence of the asymmetry in the relationships between members,there is a directionality to the flow of posts in the illustratedasymmetric social network. In particular, posts tends to preferentiallyflow in the direction indicated by arrow 1740, i.e., from an author tothat author's followers. In the illustrated example, there is anexception to this directionality, namely, the transmission of contentfrom reply post 1720 to the author of post 1705 at 1735. Nevertheless,the preferred directionality is in the direction indicated by arrow1740.

FIG. 18 is a schematic representation of an implementation of acollection of activities 1800 in an asymmetric social network.Activities 1800 occur in the context of a multiple level asymmetricsocial network in which a first member can become either a “publicfollower” or a “selected follower” of a second member without the secondmember necessarily becoming a follower of the first member. A publicfollower is a member of the asymmetric social network who receives aproper subset of the posts (i.e., the public posts) authored by thefollowed member. A selected follower is a member of the asymmetricsocial network who generally receives all of the posts (i.e., bothpublic and private posts) authored by the followed member. In someimplementations, a selected follower relationship between two members isestablished by an invitation/response protocol that effectively requiresthe consent of both members to the selected follower relationship.

In the illustrated implementation, first user “Apple” authors a post1805 using a data processing device (e.g., devices 105, 140, 182, 190(FIG. 1)). In the course of authoring post 1805, first user “Apple”indicates whether post 1805 is a public or a private post, e.g., byinteracting with an interactive element such as a widget that designatesthe post as a public or private post. Post 1805 includes informationcharacterizing the indication.

In response to input from the first user that triggers the posting ofpost 1805, post 1805 is accordingly transmitted at 1815 to socialnetwork server 1755, which receives the transmission, identifies thetransmission as a posting by the first user, and determines whether post1805 is to be posted publicly or privately. In response to determiningthat post 1805 is to be posted publicly, server 1755 identifies bothpublic and selected followers of first user “Apple” and relays contentfrom post 1805 to those followers at 1820 and at 1825. Server 1755 alsorelays content from a post 1805 that is to be posted publicly to thepublic profile of first user “Apple” at 1830. A profile is arepresentation of an individual or a group of individuals on a membernetwork. A profile generally includes details such as a name, ahometown, interests, pictures, and other information characterizing anindividual or a group of individuals. A profile is public if othernetwork members (or even the general public) do not require the consentof the represented individual or group in order to access the profile.

In response to determining that post 1805 is to be posted privately,server 1755 identifies selected followers of first user “Apple” andrelays content from post 1805 to those followers at 1820. Private posts1805 are not relayed to public followers of first user “Apple” or to thepublic profile of first user “Apple.” In either case, the followers towhom post 1805 is relayed can receive and review the transmitted contentat one or more data processing devices (e.g., devices 105, 140, 182, 190(FIG. 1)).

Activities 1800 can also be used in posting a reply post (not shown). Inparticular, the author of a reply post can indicate whether a reply postis to be publicly or privately posted. In some implementations, a replyto a private post may be forbidden or delete information identifying theauthor of the replied-to post.

FIG. 19 is a schematic representation of the display of a presentation1900 on a portion of touchscreen 115 of device 105. Presentation 1900 isdisplayed on touchscreen 115 in response to user interaction withinteractive widget 235 that is associated with contact identifier 210.The user interaction with interactive widget 235 that triggers thedisplay of presentation 1900 can be, e.g., a single or a double click ortap.

As shown, presentation 1900 shares features with presentation 300,including action widget collection 305. However, the action widgets incollection 305 are grouped together in an area 1905 that appears to havedisplaced areas 255 which are below the contact that is associated withthe interactive widget 235 that triggers the display of action widgetcollection 305. In particular, areas 255 that include identifiers 215,220, 225 appear to have been shifted downward to accommodate area 1905.As a result, area 1905 does not appear overlaid upon and does not appearto obscure at least a portion of area 255 that includes informationcharacterizing a contact that differs from the contact that isassociated with the interactive widget 235 that triggers the display ofaction widget collection 305.

As a result of this apparent displacement of some of the areas 255, atleast a portion of one or more areas 255 may no longer be visible ontouchscreen 115 of device 105. In particular, in some implementations,touchscreen 115 may not be large enough continue to display all areas255 without resizing after shifting to accommodate area 1905. Suchimplementations are schematically illustrated in FIG. 19 by the area 255which includes identifier 225 and interactive widget 250. In particular,this area is shown cut off, with a portion of this area outside the areaof touchscreen 115 that displays presentation 1900.

In other implementations, one or more areas 255 can be shifted upward toaccommodate area so that the contact identifier that is associated withthe interactive widget that triggers the display of action widgetcollection 305 is not obscured by action widget collection 305.

In the illustrated implementation, area 1905 is demarcated from otherportions of presentation 1900 by a border 1910. In otherimplementations, area 1905 can be demarcated from other portions ofpresentation 1900 by color or shade, by empty expanses, or by othervisual features that convey that widgets 310, 315, 320, 325, 330commonly belong to collection 305. In the illustrated implementation,border 1910 of area 1905 includes a pointed indicium 345 that is extendsoutwardly from a relatively straighter portion of border 1910 andextends across border 260 that demarcates area 255.

In the illustrated implementation, area 1905 that is wider than it istall. In the illustrated implementation, area 1905 spans a majority ofthe width of touchscreen 115. In this, the relative sizes of the heightand width dimensions of area 1905 follow the relative sizes of theheight and width dimensions of areas 255. In particular, areas 255 aregenerally strip-shaped elements that span a majority of the width W oftouchscreen 115. Area 19055 is also a generally strip-shaped elementthat spans a majority of the width W of touchscreen 115. In theillustrated implementation, the height of the strip of area 1905 (i.e.,in the direction of height H of touchscreen 115) is smaller than theheight of the strips of areas 255, although this is not necessarily thecase. Indeed, in some implementations, the height of the strip of area1905 can be the same as or larger than the height of the strips of areas255. Other layouts of area 1905 are possible, e.g., in other contexts.By way of example, if device 105 includes a relatively largertouchscreen 115 than in the illustrated implementation, then area 1905can be arranged differently and/or span a relatively smaller portion oftouchscreen 115.

Such an apparent displacement of identifiers and associated interactiveelements can be used in other contexts. For example, rather thanapparently overlaying area 635 on area 555 that includes informationcharacterizing a different message as shown in presentation 600 (FIG.6), one or more areas 555 can appear to have been shifted upward ordownward to accommodate an area that includes action widget collection605. As another example, rather than apparently overlaying area 835 onarea 755 that includes information characterizing a different media fileas shown in presentation 800 (FIG. 8), one or more areas 755 can appearto have been shifted upward or downward to accommodate an area thatincludes action widget collection 805. As another example, rather thanapparently overlaying area 1035 on areas 955 that includes informationcharacterizing different media files as shown in presentation 1000 (FIG.10), two or more areas 955 can appear to have been shifted upward ordownward to accommodate an area that includes action widget collection1005.

FIG. 20 is a schematic representation of the display of a presentation2000 on a portion of touchscreen 115 of device 105. Presentation 2000 isdisplayed on touchscreen 115 in response to user interaction with e-mailcontact widget 325 in action widget collection 305 that is itselfdisplayed in response to user interaction with interactive widget 235.The user interaction with e-mail contact widget 325 that triggers thedisplay of presentation 2000 can be, e.g., a single or a double click ortap.

In addition to the displayed features shared with presentation 300,presentation 2000 also includes an action disambiguation section 2005.Disambiguation section 2005 is a display area in presentation 2000 thatincludes interactive elements for resolving ambiguity as to theparticular action that is to be triggered by user interaction with aninteractive widget in action widget collection 305.

In the illustrated implementation, disambiguation section 2005 includesa pair of disambiguation widgets 2010, 2015 and a disambiguation savewidget 2020. Disambiguation widgets 2010, 2015 are interactive elementsthat, in response to user interaction, resolve ambiguity as to theaction that is to be performed on the identified contact. In theillustrated instance, disambiguation widgets 2010, 2015 disambiguate theaction triggered by e-mail contact widget 325, namely, the electronicmail address of the contact which is addressed by user interaction withe-mail contact widget 325. In other instances, disambiguation widgets2010, 2015 can disambiguate other actions. For example, in someinstances, the action triggered by telephone contact widget 320 (e.g.,which telephone number of the contact is called), the action triggeredby contact social network interaction widget 330 (e.g., which socialnetwork of the contact mediates the interaction), the action triggeredby widget 410 (e.g., which chat or text message functionality or addressis used), the action triggered by a save widget 1215, 1415 (e.g., wherethe image or document is to be saved), the action triggered by a sharewidget 1220, 1420 (e.g., how the image, a reference to the image, or areference to the electronic document is to be shared), or other actioncan be disambiguated by disambiguation widgets 2010, 2015.Disambiguation widgets 2010, 2015 can thus be presented in one or moreof areas 335, 635, 835, 1035, 1235, 1435, 1905.

In some implementations, the action which is disambiguated bydisambiguation widgets 2010, 2015 is indicated by an indicium 2022associated with a particular action widget in collection 305. In theillustrated implementation, indicium 2022 is a border 2022 thatsurrounds mail contact widget 325. In other implementations, indicium2022 can be shading, coloring, or another visual features thatdistinguishes mail contact widget 325 from the other widgets in actionwidget collection 305.

In the illustrated implementation, disambiguation widgets 2010, 2015 areeach a textual presentation of a different electronic mail address ofthe contact. User interaction with one of disambiguation widgets 2010,2015 triggers the transmission of an electronic mail message to thatrespective address or the display of a presentation for authoring anelectronic mail message addressed to that respective address. The userinteraction that triggers the such a transmission or presentation canbe, e.g., a single or a double click or tap on a respective one ofdisambiguation widgets 2010, 2015.

Disambiguation save widget 2020 is an interactive element that, inresponse to user interaction, saves the disambiguation provided bydisambiguation widgets 2010, 2015. The saved disambiguation can bestored with other user preferences (e.g., in data store 1525) and usedto disambiguate subsequent actions without additional userdisambiguation. For example, the resolution of electronic mail addressambiguity by user interaction with disambiguation widgets 2010, 2015 canbe saved and subsequent electronic mail communications to the contactidentified by identifier 210 can be addressed to the selected electronicmail address by default. In the illustrated implementation,disambiguation save widget 2020 resembles a check box that is associatedwith text 2025 that sets forth the consequences of user interaction withdisambiguation save widget 2020.

In the illustrated implementation, disambiguation section 2005 displayedwithin area 335 that includes action widget collection 305 and thatappears to be overlaid upon other portions of presentations 200, 300that are not visible in presentation 2000. In particular, area 335appears to obscure at least a portion of a pair of areas 255 thatinclude information characterizing contacts that differs from thecontact that is associated with the interactive widget 235 that triggersthe display of action widget collection 305. In other implementations,identifiers and their associated interactive elements can be apparentlydisplaced by area 335 (FIG. 19).

In the illustrated implementation, disambiguation section 2005 displayedwithin border 340 that demarcates area 335 from the remainder ofpresentation 2000. In other implementations, area 335 can be demarcatedfrom other portions of presentation 2000 by color or shade, by emptyexpanses, or by other visual features that convey that action widgetcollection 305 is associated with disambiguation section 2005. In theillustrated implementation, disambiguation section 2005 is positioned onthe opposite side of action widget collection 305 from contactidentifier 210 that is associated with the interactive widget 235 thattriggers the display of action widget collection 305.

Embodiments of the subject matter and the operations described in thisspecification can be implemented in digital electronic circuitry, or incomputer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of one or more of them. Embodiments of the subject matterdescribed in this specification can be implemented as one or morecomputer programs, i.e., one or more modules of computer programinstructions, encoded on computer storage medium for execution by, or tocontrol the operation of, data processing apparatus.

Alternatively or in addition, the program instructions can be encoded onan artificially-generated propagated signal, e.g., a machine-generatedelectrical, optical, or electromagnetic signal, that is generated toencode information for transmission to suitable receiver apparatus forexecution by a data processing apparatus. A computer storage medium canbe, or be included in, a computer-readable storage device, acomputer-readable storage substrate, a random or serial access memoryarray or device, or a combination of one or more of them. Moreover,while a computer storage medium is not a propagated signal, a computerstorage medium can be a source or destination of computer programinstructions encoded in an artificially-generated propagated signal. Thecomputer storage medium can also be, or be included in, one or moreseparate physical components or media (e.g., multiple CDs, disks, orother storage devices).

The operations described in this specification can be implemented asoperations performed by a data processing apparatus on data stored onone or more computer-readable storage devices or received from othersources.

The term “data processing apparatus” encompasses all kinds of apparatus,devices, and machines for processing data, including by way of example aprogrammable processor, a computer, a system on a chip, or multipleones, or combinations, of the foregoing The apparatus can includespecial purpose logic circuitry, e.g., an FPGA (field programmable gatearray) or an ASIC (application-specific integrated circuit). Theapparatus can also include, in addition to hardware, code that createsan execution environment for the computer program in question, e.g.,code that constitutes processor firmware, a protocol stack, a databasemanagement system, an operating system, a cross-platform runtimeenvironment, a virtual machine, or a combination of one or more of them.The apparatus and execution environment can realize various differentcomputing model infrastructures, such as web services, distributedcomputing and grid computing infrastructures.

A computer program (also known as a program, software, softwareapplication, script, or code) can be written in any form of programminglanguage, including compiled or interpreted languages, declarative orprocedural languages, and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, object, orother unit suitable for use in a computing environment. A computerprogram may, but need not, correspond to a file in a file system. Aprogram can be stored in a portion of a file that holds other programsor data (e.g., one or more scripts stored in a markup languagedocument), in a single file dedicated to the program in question, or inmultiple coordinated files (e.g., files that store one or more modules,sub-programs, or portions of code). A computer program can be deployedto be executed on one computer or on multiple computers that are locatedat one site or distributed across multiple sites and interconnected by acommunication network.

The processes and logic flows described in this specification can beperformed by one or more programmable processors executing one or morecomputer programs to perform actions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read-only memory ora random access memory or both. The essential elements of a computer area processor for performing actions in accordance with instructions andone or more memory devices for storing instructions and data. Generally,a computer will also include, or be operatively coupled to receive datafrom or transfer data to, or both, one or more mass storage devices forstoring data, e.g., magnetic, magneto-optical disks, or optical disks.However, a computer need not have such devices. Moreover, a computer canbe embedded in another device, e.g., a mobile telephone, a personaldigital assistant (PDA), a mobile audio or video player, a tabletcomputer, a game console, a Global Positioning System (GPS) receiver, ora portable storage device (e.g., a universal serial bus (USB) flashdrive), to name just a few. Devices suitable for storing computerprogram instructions and data include all forms of non-volatile memory,media and memory devices, including by way of example semiconductormemory devices, e.g., EPROM, EEPROM, and flash memory devices; magneticdisks, e.g., internal hard disks or removable disks; magneto-opticaldisks; and CD-ROM and DVD-ROM disks. The processor and the memory can besupplemented by, or incorporated in, special purpose logic circuitry.

To provide for interaction with a user, embodiments of the subjectmatter described in this specification can be implemented on a computerhaving a display device, e.g., a CRT (cathode ray tube) or LCD (liquidcrystal display) monitor, for displaying information to the user and akeyboard and a pointing device, e.g., a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input. In addition, a computer can interact with a user bysending documents to and receiving documents from a device that is usedby the user; for example, by sending web pages to a web browser on auser's client device in response to requests received from the webbrowser.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of anyinventions or of what may be claimed, but rather as descriptions offeatures specific to particular embodiments of particular inventions.Certain features that are described in this specification in the contextof separate embodiments can also be implemented in combination in asingle embodiment. Conversely, various features that are described inthe context of a single embodiment can also be implemented in multipleembodiments separately or in any suitable subcombination. Moreover,although features may be described above as acting in certaincombinations and even initially claimed as such, one or more featuresfrom a claimed combination can in some cases be excised from thecombination, and the claimed combination may be directed to asubcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the embodiments described above should not be understoodas requiring such separation in all embodiments, and it should beunderstood that the described program components and systems cangenerally be integrated together in a single software product orpackaged into multiple software products.

Thus, particular implementations have been described. Otherimplementations are within the scope of the following claims. In somecases, the actions recited in the claims can be performed in a differentorder and still achieve desirable results. In addition, the processesdepicted in the accompanying figures do not necessarily require theparticular order shown, or sequential order, to achieve desirableresults. In certain implementations, multitasking and parallelprocessing may be advantageous.

1. A method performed by a system comprising one or more data processing devices and a touchscreen display, the method comprising: displaying, by the system on the touchscreen display, several identifiers, each identifier comprising one or more graphical or textual elements that identify an item, each identifier associated with a respective interactive element; receiving, by the system, user interaction with a first of the interactive elements that is associated with a first of the identifiers; in response to the user interaction, the system displaying a collection of action widgets on the touchscreen display, the action widgets comprising iconic graphical indicia that each represent an action triggered by user interaction therewith, the iconic graphical indicia displayed adjacent one another in a strip-shaped area that is wider than it is high, the strip-shaped area being displaced vertically on the touchscreen display from the first identifier so that the first identifier is visible on the touchscreen notwithstanding the display of the collection of action widgets; receiving, by the system, user interaction with a first of the action widgets that is in the collection displayed on the touchscreen display; and performing, by the system, the action represented by the first of the action widgets on the item identified by the first identifier.
 2. The method of claim 1, wherein displaying the collection of action widgets on the touchscreen display comprises apparently displacing one or more of identifiers away from the first identifier to accommodate the strip-shaped area between the displaced one or more of identifiers and the first identifier.
 3. The method of claim 1, wherein: the method further comprises: displaying a disambiguation interactive element on the touchscreen display on a side of the strip-shaped area opposite the first identifier, and receiving user interaction with the disambiguation interactive element, the user interaction disambiguating the action represented by the first of the action widgets; and performing the action represented by the first of the action widgets comprises performing the action in accordance with the disambiguation provided by the user interaction with the disambiguation interactive element.
 4. The method of claim 1, wherein displaying the collection of action widgets comprises displaying a pointed indicium that is directed toward an area in which the first identifier is found.
 5. The method of claim 4, wherein: a border surrounds the collection of action widgets, the border demarcating the collection of action widgets from other portions of the touchscreen display; and the pointed indicium extends outwardly from a relatively straighter portion of the border toward the area in which the first identifier is found.
 6. The method of claim 1, wherein each collection of information is displayed in a strip-shaped area that is wider than it is high.
 7. The method of claim 6, wherein each strip-shaped area occupies a majority of the width of the touchscreen display.
 8. The method of claim 6, wherein the identifiers are aligned horizontally in the strip-shaped areas.
 9. The method of claim 1, further comprising: receiving, by the system, user interaction dragging across the strip-shaped area; and in response to the user interaction, the system displaying a second collection of action widgets on the touchscreen display, the second collection of action widgets including at least one action widget that is not found in the action widget collection and excluding at least one action widget that is found in the action widget collection.
 10. The method of claim 1, wherein: the first identifier identifies a first message; and the action widgets in the collection include: a reply widget that, in response to user interaction, triggers a display of a presentation for authoring a reply to the first message; and a repost widget that, in response to user interaction, triggers reposting of the first message to a social network.
 11. The method of claim 1, wherein: the first identifier identifies a first contact; and the action widgets in the collection include: a telephone contact widget that, in response to user interaction, triggers a telephone call to the first contact; and a message widget that, in response to user interaction, triggers a display of a presentation for authoring a message addressed to the first contact.
 12. The method of claim 1, wherein: the first identifier identifies a first media file; and the action widgets in the collection include: a telephone contact widget that, in response to user interaction, triggers a telephone call to the first contact; and a message widget that, in response to user interaction, triggers a display of a presentation for authoring a message addressed to the first contact.
 13. A device comprising a computer storage medium encoded with a computer program, the program comprising instructions that when executed by a system comprising one or more data processing devices and a touchscreen display, cause the one or more data processing devices to perform operations, the operations comprising: displaying an interactive element in a presentation on the touchscreen display; receiving user interaction with the interactive element; and displaying, in response to the user interaction, a collection of action widgets apparently overlaid on the presentation, the action widgets comprising iconic graphical indicia that each represent an action triggered by user interaction therewith, the iconic graphical indicia displayed adjacent one another in an area that is wider than it is high and that is associated with a visible indicium that indicates to what the action triggered by user interaction with the widgets in the collection are directed, the area being displaced on the touchscreen display from the interactive element so that the interactive element is visible in the presentation notwithstanding the display of the collection of widgets.
 14. The device of claim 13, wherein the operations further comprise: receiving user interaction with a first of the action widgets that is in the collection displayed on the touchscreen display; and performing the action represented by the first of the action widgets in accordance with the visible indicium.
 15. The device of claim 14, wherein: the operations further comprise: displaying a disambiguation interactive element on the touchscreen display, and receiving user interaction with the disambiguation interactive element, the user interaction disambiguating the action to be performed with the first of the action widgets; and performing the action represented by the first of the action widgets comprises performing the action in accordance with the disambiguation provided by the user interaction with the disambiguation interactive element.
 16. The device of claim 14, wherein: the visible indicium indicates that the action triggered by user interaction with the widgets in the collection is directed to a message; and the action widgets in the collection include: a reply widget that, in response to user interaction, triggers a display of a presentation for authoring a reply to the first message; and a repost widget that, in response to user interaction, triggers reposting of the first message to a social network.
 17. The device of claim 14, wherein the visible indicium indicates that the action triggered by user interaction with the action widgets in the collection is directed to a hyperlink that refers, in a reference, to an electronic document or to a portion of an electronic document.
 18. The device of claim 17, wherein the widgets in the collection include: an open widget that, in response to user interaction, triggers opening of the referenced electronic document or the referenced portion of the electronic document; and a share widget that, in response to user interaction, triggers transmission of a message or display of a presentation for authoring a message that includes the reference.
 19. The device of claim 14, wherein the area in which the iconic graphical indicia are displayed is demarcated from other portions of the presentation by a border that surrounds the collection of widgets.
 20. The device of claim 19, wherein the visible indicium comprises a pointed indicium that extends outwardly from a relatively straighter portion of the border.
 21. The device of claim 19, wherein the interactive element is encompassed by the border.
 22. A handheld data processing system comprising: a touchscreen display; and a collection of one or more data processing devices that perform operations in accordance with one or more collections of machine-readable instructions, the operations including instructing the touchscreen display to display, in response to user interaction with a first interactive element displayed on the touchscreen display in association with an identifier of a contact, a first collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified contact, and display, in response to user interaction with a second interactive element displayed on the touchscreen display in association with an identifier of a message, a second collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified message, wherein the respective of the first and the second interactive elements are visible on the touchscreen display notwithstanding the display of the respective of the first or the second collection of action widgets.
 23. The handheld data processing system of claim 22, wherein the operations include instructing the touchscreen display to display, in response to user interaction with a third interactive element displayed on the touchscreen display in association with an identifier of a media file, a third collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified media file.
 24. The handheld data processing system of claim 22, wherein each of the first interactive element and the second interactive element are displayed on the touchscreen display in conjunction with a collection of other interactive elements, each of the other interactive elements associated with an identifier of another contact or another message.
 25. The handheld data processing system of claim 24, wherein the identifiers in a presentation are displayed in respective strip-shaped areas that include information characterizing contacts, media files, or messages.
 26. The handheld data processing system of claim 25, wherein the identifiers are aligned horizontally in the strip-shaped areas.
 27. The handheld data processing system of claim 22, wherein each of the collections of action widgets is associated with a pointed indicium that is directed to indicate the respective contact or message to which the actions are directed.
 28. The handheld data processing system of claim 27, wherein the operations including instructing the touchscreen display to display: a border surrounding the first and the second action widget collections, the border demarcating the first and the second action widget collections from other portions of the touchscreen display; and the pointed indicium extending outwardly from a relatively straighter portion of the borders toward the area in which the identifier of the respective contact or message is found.
 29. The handheld data processing system of claim 22, wherein the operations including instructing the touchscreen display to display the iconic graphical indicia of the first and the second action widget collections adjacent one another in a strip-shaped area that is wider than it is high, the strip-shaped area being displaced vertically on the touchscreen display from the respective of the first and the second interactive elements.
 30. The handheld data processing system of claim 29, wherein the operations further include: receiving user interaction dragging across the strip-shaped area that includes the iconic graphical indicia; and in response to the dragging user interaction, instructing the touchscreen display to display a second collection of action widgets in the strip-shaped area, the second collection of action widgets including at least one action widget that is not found in the first or the second action widget collection and excluding at least one action widget that is found in the first or the second action widget collection. 